質問

私はwindow.openerと相互作用することをポップアップウィンドウに取り組んできました。私は、オブジェクトを追加しようとするとIEが動作していないと、特定の問題を発見しました。私はA デモページを設定しましたここします。

基本的にはどのようなデモを行うことはボタンでポップアップウィンドウを開きます。私は私ので説明したようにページの部分を強調することを意図しています前の質問でます。

デモでは、ポップアップウィンドウのボタンをクリックすると、window.openerには2つのdivを追加します。一divは、文字列として追加され、第二のオブジェクトとして追加されます。オブジェクトを追加しようとしたとき、私はIEでエラーが発生します。ここではjavascriptのは、次のとおりです。

$(':button').click(function(){
 $('#clicked').empty().show().html('Click detected!').fadeOut();
 var str = '<div class="highlight" style="position:absolute;height:50px;width:50px;left:150px;top:100px;background:#fc0;zIndex:99;">str</div>';
 var obj = $('<div/>', {
  'class': 'highlight',
  css: {
   position:   'absolute',
   height:     '50px',
   width:      '50px',
   left:       '100px',
   top:        '100px',
   background: '#08f',
   zIndex:     99
  }
 }).html('obj');
 try { $(window.opener.document.body).append(obj); } catch(err) { alert(err.description) };
 $(window.opener.document.body).append(str);
})

だから、私はjQueryを使って問題を追跡するのに助けを求めています。

役に立ちましたか?

解決

私はIEを使用すると、別のウィンドウのDOMに1つのウィンドウで作成された要素を追加できるようになるとは思いません。これは、そのことについては本当にうるさいです。あなたが構築Javascriptが作成ウィンドウが後消える場合は特に。

、別のウィンドウからオブジェクトを渡すと同様に、それは時々びびるます

あなたの要素を作成するためにwindow.opener.$("<div/>")を使用してみてください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top