3

IE8 で非常に奇妙な動作が発生しています。

ポップアップウィンドウを作成するための簡単なJavaScript関数があります。ポップアップ ウィンドウは問題なく作成されますが、親ウィンドウは [object] を表示するだけの完全に空白のウィンドウに転送されます。元のページに戻るには、戻るボタンを押す必要があります。

<a href='javascript:window.open("http://endic.naver.com/search.nhn?query=In&searchOption=entry_idiom","Dictionary","width=500, height=500")' target="_blank">Click me</a>

Chrome では問題ありません。IE のみです。どうすればこの迷惑な行動を取り除くことができますか?

4

3 に答える 3

11

問題は、Internet Explorer が期待どおりにコードを実行することですがwindow.open、新しいドキュメントに の戻り値も表示することです。window.open新しいドキュメントへのオブジェクト参照を返すため、これは文字列に変換されて表示[object Object]されます。

これを解決するreturn falseには、ブラウザが何も返さないように追加できます。

<a href='javascript:window.open("http://endic.naver.com/search.nhn?query=In&searchOption=entry_idiom","Dictionary","width=500, height=500"); return false' target="_blank">Click me</a>

編集- この回答の下にある OP のコメントを参照してください。解決策は、JavaScript を属性に移動し、属性をポップアップ名と同じになるようonclickに変更することでした。target

<a href="javascript:void(0);" onclick='window.open("http://endic.naver.com/search.nhn?query=In&searchOption=entry_idiom","Dictionary","width=500, height=500");' target="Dictionary">Click me</a>
于 2013-03-17T16:01:27.137 に答える
2

これを試してください:http://jsfiddle.net/kelervin/Pf8Rw/

HTML

    <a href="http://www.google.com" class="open-popup">test</a>

Jクエリ

    $('.open-popup').click(function(e) {
        e.preventDefault();
        window.open(this.href, '_blank', 'width=300,height=200');
    });

注 : Chrome および IE 8 でテスト済み

于 2013-03-17T15:56:24.600 に答える
0

アウトバウンド リンクの追跡を無効にする必要があります。次の JavaScript コードを index.html ファイルに追加します。

<script type="text/javascript"> var clicky_custom = clicky_custom || {}; clicky_custom.outbound_disable = 1; </script>

于 2015-01-28T19:08:43.397 に答える