iFrameを持つhtmlページがあります。そこからいくつかの変数を読み込みます。 基本的には、緯度と経度の値を取得するマップです。iFrame、またはその逆の変数へのアクセス
私はAdobe AIRで作業していましたが、innerHTML、contentWindowから値を取得しようとしましたが、まだ動作していません。
これを行うには良い方法がありますか?
iFrameを持つhtmlページがあります。そこからいくつかの変数を読み込みます。 基本的には、緯度と経度の値を取得するマップです。iFrame、またはその逆の変数へのアクセス
私はAdobe AIRで作業していましたが、innerHTML、contentWindowから値を取得しようとしましたが、まだ動作していません。
これを行うには良い方法がありますか?
jQueryを使用してiframe内のコンテンツにアクセスできます。
<iframe id="iframeId" ...> .... <div id='someData'>data</div> ....</iframe>
$('#iframeId').contents().find('#somedata').html(); // returns data
クロスドメインの場合は機能しません。 –
ブラウザセキュリティモデルは、ドメイン間のトラフィック/通信を禁止します。異なるサブドメインを扱っている場合は、トップドメインにルールを緩和することができます。しかし、最終的に、あなたは頼りになりません。
ドメイン境界を越えて話す必要のあるアプリケーションがある場合は、通常はバックエンド経由で接続するのが最善の方法です。 iframeのコンテンツを管理していない場合は、通常運が悪いです。参考までに、Googleマップはアプリケーションを使用するためのAPIを提供しています。 http://code.google.com/apis/maps/index.html
アプリケーションを使用していないサンドボックスブリッジにアプリケーションを使用する必要があります。これにより、2つの領域(iframeとgeneral)間の通信が可能になります。 「バックエンドを経由」され、正確に何を:
@svend、返信みんなのためにここにhttp://www.adobe.com/devnet/air/ajax/quickstart/sandbox_bridge.html
感謝を見てください?私はそれを得る...私は他のドメインにあるiFrameのコンテンツを制御します。
@Webber:そのつもりは私のために働くようにそのリンクウェバーのためのおかげで...見える..私はそれを試してみるよ...
私はsvendは、コンテナページが提供されているドメインを介してiframeコンテンツをプロキシする必要があることを意味します。 – anddoutoi
非アプリケーションサンドボックスブリッジへの適用がある場合で働いていました私はそれをこのようにしなければならなかったクロスドメイン通信..回答の男性のための
おかげ..
:
1-彼らはLNGを保存IFRAMEを含むファイル内の隠し入力を追加し、ユーザが変更するたびに変更することができます。
2- jsファイルにこの関数を作成します。
function getFrameWindow(frameId) {
var frame = document.getElementById(frameId);
var result = null;
if (frame.contentDocument) {
// For NS6
result = frame.contentDocument.window || frame.contentDocument.defaultView;
} else if (frame.contentWindow) {
// For IE5.5 and IE6
result = frame.contentWindow;
} else if (frame.document) {
// For IE5
result = frame.document.window;
}
return result;
}
3- IFRAMEを含むJavaScriptからこのコードを使用:
getFrameWindow("iframe").document.getElementById("lat").value
隠し入力の代わりに変数を追加して、次のようにアクセスすることもできます: getFrameWindow( "iframe")。document.variable_name – Luci
は、同じドメイン内のiframeとメイン内部のページはありますか? –