- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:別windowを開いて同じ関数を走らせたい
)
別windowで同じ関数を走らせたい
このQ&Aのポイント
- ブックマークレットAを使用して、別のページで同じ関数を実行する方法を探しています。試したいくつかのコードもありますが、うまく動作しません。
- ブックマークレットAを使用して、異なるページで同じ関数を実行したいと考えています。試したコードをいくつか示しましたが、どれもうまくいきません。
- 別のページで元のページで定義されたブックマークレットAの関数を実行する方法を探していますが、うまくいきません。アイデアや例などのご意見をお待ちしています。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
function findUser(){(略)} var w=window.open(getXXXURL(++currentPage)); w.focus(); w.findUser=findUser; // 追加 /* 以下のいずれかで実行 */ w.findUser(searchID,currentPage); // w.setTimeout("findUser(searchID,currentPage)",3000); 未検証です。 こういう作り方をしたことがないので、 findUser関数とw.findUser関数のなかで参照しているグローバル変数やdocumentオブジェクトなどが、 親ウインドウと子ウインドウのどちらにに属するかは不明です。 仕様によっては、たとえばdocument.getElementById()という部分をopener.document.getElementById()に書き換えて、findUser関数を再定義しないと行けないかもしれません。 逆に、親ウインドウに属するfindUser関数の方で、w.documentElement.getElementById()などとすると、子ウインドウの内容が取得できると思います。
お礼
回答どうもありがとうございます。 w.findUser=findUser; // 追加 というアイデアと、 >> 逆に、親ウインドウに属するfindUser関数の方で、w.documentElement.getElementById() << というヒントにより無事解決することができました! ご協力、どうもありがとうございました!