私のアプリケーションから、ユーザーが2つの異なるタブ/ウィンドウで同じリンクを開くのをブロックする必要があります(リンクは静的ではなく動的です)。リンクはIDベースで生成されるため、ユーザーが異なるタブで同じID情報を開くことはできません。
どうすればそれを防ぐことができますか?
私のアプリケーションから、ユーザーが2つの異なるタブ/ウィンドウで同じリンクを開くのをブロックする必要があります(リンクは静的ではなく動的です)。リンクはIDベースで生成されるため、ユーザーが異なるタブで同じID情報を開くことはできません。
どうすればそれを防ぐことができますか?
ローカル ストレージを使用して、ロード アクティビティで開かれたページにフラグを立て、フラグが設定されている場合はロード チェックのアンロードでフラグをリセットし、フラグが設定されている場合は制限し、そうでない場合は許可することができます。
window.open() を使用してウィンドウに名前を付けると、複数のウィンドウ/タブは開きません。
例:
window.open("http://www.google.com", "myWindow");
ウィンドウ間の違いを生む ID がある場合、コードは次のようになります。
window.open("url_for_id", "window" + id);
私はあなたがそれを行うことができるとは思わない. しかし、このようにすることができます ユーザーがページを表示するたびにトークンを生成し、それをセッションとページに保存します ユーザーが両方のタブからデータを送信するのを防ぐことができます
あなたが来ることができる最も近いものは次のとおりだと思います:
document.body.innerHTML = ''
もちろん、これはユーザーにとって恐ろしいことであり、デバッグ ツールで JS をハッキングするか、情報をコピーして貼り付けるか、スクリーン ショットを撮るだけで、簡単に無効にすることができます。
Web ブラウザは、取得した情報でユーザーがダウンロードできるものを制限するようには設計されていません。