JQueryを使用して親ウィンドウでDIVを選択する方法はありますか?
例えば:
メインページにはこれが含まれていますが、
<div id="testdiv"></div>
ポップアップページには、いくつかのオプションと「適用」ボタンのあるフォームがあります。ユーザーが[適用]をクリックすると、メインページのスタイル属性に影響します。
の論理に沿った何か、
parent.$("#testdiv").attr("style", content from form);
コンテキストパラメータを使用する
$("#testdiv",parent.document)
ただし、実際にポップアップを使用する場合は、parentではなくopenerにアクセスする必要があります
$("#testdiv",opener.document)
この問題の解決策を探して、現在のページを見つけました。上記のソリューションを実装しました。
$("#testdiv",opener.document) //doesn't work
しかし、それは機能しません。以前のjQueryバージョンでは機能していたかもしれませんが、現在は機能していないようです。
私は別のstackoverflowページでこの作業ソリューションを見つけました: jqueryを使用して親ウィンドウオブジェクトにアクセスする方法?
私はこの実用的なソリューションを得ました:
window.opener.$("#testdiv") //This works.
私は同じ問題に遭遇しましたが、上で述べたように、受け入れられた解決策は私にとってはうまくいきませんでした。
フレームまたはiframe要素の内側にいる場合、代替ソリューションは
window.parent.$('#testdiv');
window.opener、window.parent、window.topの違いについて簡単に説明します:
使用することもできます
parent.jQuery("#testdiv").attr("style", content from form);
なぜ両方とも確認しないのですか?
if(opener.document){
$("#testdiv",opener.document).doStuff();
}else{
$("#testdiv",window.opener).doStuff();
}