つまり、target="_blank" を含むリンクがあり、このリンクをクリックして window.open() を作成するハンドラがある場合、JS で呼び出されたポップ ウィンドウが表示されますが、リンクは開かれません。 IE の新しいタブ (9 バージョンは確かにテスト済み) では、IE ポップアップ ブロッカーによってブロックされます。
他のすべてのブラウザでは、新しいタブのリンクとポップ ウィンドウの両方が開きます。回避策はありますか?
5728 次
1 に答える
1
あなたが言ったように、Chrome はこれを許可しますが、IE9 はデフォルトでこの動作をブロックします ( fiddle )。ただし、これはポップアップ ブロッカーからの完全に正当な応答のようです。ほとんどのユーザーは、ハイパーリンクが 2 つの新しいウィンドウを同時に開くことを期待する (または期待する必要がある) とは思えません。
とはいえ、ユーザーはサイトからのポップアップを許可するために、IE のポップアップ ブロッカー設定を変更できます。
[アップデート]
window.open()でタイムアウトを使用してテストすると、リンクのhrefであるかwindow.open() ( fiddle )の結果であるかに関係なく、抑制されるのは確かに 2 番目のウィンドウであることがわかります。
于 2011-08-02T17:08:58.983 に答える