外部 URL のコンテンツを表示する iframe を使用しています。表示するコンテンツがない場合 (つまり、空の場合)、iframe を非表示にしたい。これを行う方法を教えてください。
質問する
4301 次
3 に答える
3
iframe 内の外部 URL のコンテンツが空で、iframe がクロスドメインでないことを確認したい場合は、iframe 内の body タグの存在を確認できます。存在する場合は、何かがロードされています。jQueryを使用できる場合は、そのlength
プロパティを確認してください。これはクロスブラウザ互換です。ゼロの場合、存在しません。
コード:
if($("#iframeid").contents().find("body").length) {
// some html page loaded in iframe
}
iframe がクロスドメインの場合、同一オリジン ポリシーによってブロックされます。それ以外の場合、これは機能します。
于 2013-05-03T04:33:48.753 に答える
-1
Jquery .content() を使用して iframe のコンテンツを評価し、.hide() を使用して非表示にします。後でもう一度表示したい場合は、代わりに .toggle() を使用してください。
于 2013-05-03T04:31:45.857 に答える
-1
いいえ。
これは、呼び出しページのスクリプトでは実行できません。呼び出し元のページは、クロスドメイン セキュリティの制限により、iframe 内に読み込まれた外部ドキュメント オブジェクトにアクセスできません。
于 2013-05-03T04:32:50.020 に答える