ローカルのjqueryダイアログ内にクロスドメインのiframeコンテンツを作成したい。同じアプリケーションで開発していたときは、すべて問題ありませんでした。別のURLを使用して別のアプリケーションでテストしようとすると、エラーが発生します。
Error: Permission denied to access property ...
セキュリティポリシーに問題があることは知っていますが、フレーム内で選択する必要があります。
私がしていることをお見せしましょう:
foo/plugin.js:
var frameDOM;
function frameLoaded(){
for(var i = 0; i <window.frames.length; i ++){
if(window.frames [i] .name == "frame-name-here"){
frameDOM = window.frames [i] .document;
壊す;
}
}
}
$(function(){
var frame = "<iframe src ='http:// bar:222 / Home / frame' id ='frame-content' name ='frame-name-here' onload ='frameLoaded()' />";
$( "#dialog-form")。dialog({autoOpen:true、height:450、width:500、modal:true、resizable:false、
ボタン:{
"Deliver":function(){//ここにいくつかの長いコード
}
}
create:function(event、ui){
$(this).append(frame);
}
});
フレームが読み込まれた後、フレーム内のコンテンツに簡単にアクセスできます。
$("#frame-input", frameDOM).val();
クロスドメインで私はそのような可能性を失いました。別のドメインから取得した、フレーム内のセレクターを制御する他の方法はありますか?
PSフレームのサイズを変更する必要はありませんが、その解決策は役に立ちませんでした。これは機能していないので、私は別の方法を探しています。