ホームページ >ウェブフロントエンド >jsチュートリアル >Iframe の現在の場所にアクセスするにはどうすればよいですか?

Iframe の現在の場所にアクセスするにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-20 13:10:30950ブラウズ

How Can I Access the Current Location of an Iframe?

iframe の現在の場所へのアクセス: 課題と回避策

クロスオリジン リソース共有 (CORS) 規制は、 iframe の現在の場所。このセキュリティ対策により、別のオリジンに存在する JavaScript コードがページの URL に直接アクセスすることが防止されます。

JavaScript を使用して iframe の URL にアクセスすることは現実的ではありませんが、解決策を提供できる代替アプローチがあります。

ブラウザ側の回避策 (同一オリジンのみ)

同じオリジン内 (つまり、ページを含むページと iframe コンテンツの両方が同じドメインに属している) では、iframe のdocumentWindow.location.href プロパティを使用して現在の URL を取得します。ただし、このアプローチは、同じオリジンの iframe に限定されます。

サーバー側アプローチ

代替ソリューションには、サーバー側スクリプトを使用して iframe の URL を取得することが含まれます。 。サーバー側スクリプトは、iframe のオリジンへの HTTP リクエストを作成し、ページ コンテンツをフェッチし、URL を抽出できます。

ブラウザ内ブラウザ コントロール

別のオプションブラウザ内ブラウザ コントロールの採用を検討することです。これは、別のブラウザ ウィンドウ内でブラウザ ウィンドウのように動作する特殊なコンポーネントです。ブラウザ内ブラウザ コントロール内で iframe をホストすると、iframe の生成元に関係なく、その URL やその他のプロパティにプログラムでアクセスできるようになります。

その他の考慮事項

  • 例外: iframe のコンテンツが含まれているページとは異なるドメインから読み込まれている場合、その URL にアクセスすると権限拒否エラーが発生します。
  • ブラウザの互換性: documentWindow.location.href プロパティとブラウザ内ブラウザ コントロールの可用性と機能は、ブラウザによって異なる場合があります。

以上がIframe の現在の場所にアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。