私のウェブサイトを2つのタブで開いているとし、idが "id"の要素を取得したい場合は、現在フォーカスが当てられているブラウザタブで何とか要素を取得できますか?IDが同じでブラウザのタブが異なる要素を区別する方法はありますか?
document.getElementById("id");
最も最近ロードされた要素を取得するようです。
私のウェブサイトを2つのタブで開いているとし、idが "id"の要素を取得したい場合は、現在フォーカスが当てられているブラウザタブで何とか要素を取得できますか?IDが同じでブラウザのタブが異なる要素を区別する方法はありますか?
document.getElementById("id");
最も最近ロードされた要素を取得するようです。
いいえ、セキュリティホールが詰まっています。
stackoverflowに関する同様の質問があります:Accessing the content of other tabs in browser
This answerリンクされた質問にはそれを行うためのコードが用意されていますが、IEの場合、他のドキュメントのイベントハンドラを指定しようとすると問題が発生しました。
それはなぜそのように機能しますか?つまり、タブnr1にあり、ドキュメントにid = 'id'の入力要素があるとします。今度は、タブnr2を開き、それに切り替えて、id = 'id'の要素の値を 'xyz'に設定します。私がタブnr1に切り替えて、入力の値を印刷しようとすると、 'xyz'の代わりに ''またはそれが何であったかが表示されます。 – Bogdan
あなたがリンクした答えは、私はjavascriptから新しいタブを開くとうまくいくと思いましたが、解決しようとしている場合、ユーザーはブラウザ内から新しいタブを強制的に押します。 – Bogdan
Javascriptは不可能ではありません。実際には、ブラウザベンダーにバグレポートを提出してください;) – knittl
ブラウザタブを意味しますか? – Purag
@Purmouはい、明快に編集されました – Bogdan