web-dev-qa-db-ja.com

ブラウザの他のタブのコンテンツへのアクセス

私はMozillaFirefoxを使用しており、JavaScriptとDOMを使用して同じウィンドウ内の他のタブのコンテンツにアクセスする方法を見つけようとしています(存在する場合は他の手法を利用できます)。

tab1でJavaScriptを実行して他のタブのタイトルを見つけたい。基本的に、これは、window.openメソッドを使用せずに、現在のページでhrefが原因で開いたタブを識別できるようにするために必要です。私が欲しいのは、現在のページと同じドメインに属するページを開く単純なハイパーリンクです(ページは新しいタブで開く必要があります)。現在のタブからこの新しいタブにアクセスできるようにしたいと思います。

16
vamyip

HTML5クロスウィンドウメッセージング ...を使用できますが、それはちょっと最先端です。

その場合でも、JavaScriptでタグ「クリック」イベントをハイジャックし、自分でウィンドウを開いて、メッセージを投稿するための新しいウィンドウオブジェクトにアクセスできるようにする必要があります。

10
sje397

Javascriptを使用して新しいウィンドウを簡単に開くことができますが、それはそれだけのことだと確信しています。セキュリティの観点から、あるタブのJavascriptが別のタブのDOMにクエリ/アクセスできるようにすることは望ましくありません。両方のサイトが別々のタブで開かれている場合、どのサイトも銀行口座の詳細などにアクセスできるようになります。

15
Paul Hadfield

Vamyip、

同じドメイン内の任意のページにアクセスできるCookieを設定してみてください。他のページでは、javascriptタイマーを使用して、Cookieの値が変更されているかどうかを確認し、変更された場合は、その値を使用してアクションを実行できます。

それは私のために働いた。

9
Shane

JavaScriptで開いていて、ページが実際に同じドメインにある場合は、新しいウィンドウ/タブにアクセスできます。

あなたはそのようにウィンドウ/タブを開くことができます

var win = window.open("/path_to_page");

次に、アクセスする前にページが読み込まれるのを待つ必要があります。タイトル。

win.onload = function(){ alert(win.document.title); };
9
livedo