たとえば、ユーザーのリダイレクト先を決定するクリック ハンドラを持つ JavaScript コードがあります。ユーザーがリンクをクリックしたときに計算されるリダイレクトのランダムリンクだとしましょう。
以下にいくつかのシナリオを示します。
ユーザーがリンクを左クリックした場合、ユーザーの意図はナビゲーションを同じタブに保持することであり、
window.location
.ユーザーがこのリンクをミドル クリックすると、Web サイトがミドル クリックを乗っ取って無視したように見え、ユーザーは新しいタブではなく同じタブ内にリダイレクトされます。
また、誰かがコメントした (そしてコメントを削除した?) ように、別のシナリオでは、修飾キーがブラウザに新しいタブや新しいウィンドウを開くことを提案することもあります。
もう 1 つの提案は、コンテキスト メニューを介して新しいタブまたはウィンドウでリンクを開くことができることです。これはそれほど重要ではありませんが、確実に同じユーザビリティの問題です。
この問題は多くの Web サイトで見られますが、特に Google アナリティクスでは、中クリックするたびにこの現象が発生します。
一部の JavaScript コードに必要なものの良い例は次のとおりです。
一部のデータを処理し、ユーザーがクリックしたリンクに進む前に完了する必要がある XHR 要求を送信します。
これをどのように回避しますか?たとえば、ユーザーがリンクが新しいタブに表示されることを期待しているかどうかを検出する方法はありますか? もしそうなら、新しいタブをロードすることは可能ですか? 多分私はこれについて間違った方法で考えていますか?