この記事の例では、JS を使用して新しいウィンドウを開き、ブラウザーによってブロックされないようにする方法を説明します。皆さんの参考に共有してください。具体的な分析は次のとおりです。
従来の window.open() メソッドを使用して新しいウィンドウを開くと、ブラウザによってブロックされます。では、ブラウザによってブロックされずに JS で新しいウィンドウを開くにはどうすればよいでしょうか。実際には、まだ方法はあります。ここでは、この問題を解決する方法を分析します
。私も最近そのような問題に遭遇したので、新しいウィンドウをポップアップする方法を共有します。皆さんもぜひ追加してください...
最初の方法は、ネイティブ JavaScript の window.open() メソッドを使用することです (ほとんどの場合、ブラウジングによって自動的にブロックされます)
2 番目の方法は、フォームの送信をシミュレートすることです。原則として、開きたい URL アドレスとしてフォームのアクションを指定し、ターゲットを「_blank」に設定します。
ただし、フォーム送信をシミュレートする方法もブロックされる可能性があります...
3 番目のタイプ、シミュレートされたハイパーリンク () のクリック
ボタンを押して新しいタブを開きたい場合、押されたリンクをシミュレートしてリンクを開くことができます。
ただし、jQuery では、a.click()、a.trigger('click') などを使用しても、リンクのデフォルト イベントは実行されません。
次のコードは、リンク クリック イベントの生成をシミュレートし、デフォルトでリンクを開くイベントを実行します。
ただし、注意すべき点が 1 つあります。IE ブラウザでは、IE9 以降のみが document.createEvent 関数をサポートしているため、次のコードを IE で実行する場合は、IE9 以降が必要です
4番目の方法は、ブラウザのバブリングイベントを使用する方法です(再掲)
1) まず、最後の効果について説明します。これは、「A」を使用してポップアップ ウィンドウをトリガーする要素を含めるというものです。元のクリック イベントは、ポップアップの URL を返す必要があります。次の文に対応するウィンドウを開きます。