3

私の仕事は、虐待を受けた女性のためにいくつかのウェブサイトを構築することです. 彼らは、侵入された場合に備えて、すぐにページを離れるために「エスケープ」ボタンを要求しています。

彼らが私にくれた例は、通常のリンク (「戻る」をクリックして前のページに戻ることができるリンク) か、ポップアップと新しいウィンドウを含む複雑なソリューションのいずれかで、単純な「戻る」だけでどこにあったかを確認できます。個人的には、どちらも素晴らしいアイデアではないと思います。現在のウィンドウを閉じて別のウィンドウを開くいくつかの方法を検索して試しましたが、主要なブラウザーで機能する解決策を見つけることができませんでした。誰かがこれを行う方法を知っているか、問題を解決する方法についてより良いアイデアを持っているなら、私はそれを感謝します.

この投稿 (新しいウィンドウを開いて現在のウィンドウを閉じる Html javascript ) はクロムで動作しますが、残念ながら、少なくとも IE、Firefox、および Chrome で動作する必要があります。

4

6 に答える 6

0

JavaScript を使用してページ全体を空白の div に置き換えるのはどうですか? ページの変更が必要なソリューションの問題は、ネットワークの待ち時間を制御できないことです。ページからすべてのコンテンツを削除すると、完全に制御できるようになります。

以下のソリューションは、高さと幅が 100% の固定位置の div を示しているだけで、ページ上のコンテンツを隠しています。ページが非表示の場合、読み込み時間を気にせずに場所を安全に変更できます。

<div id="HideMe" style="display: none; position: fixed; width: 100%; height: 100%; background-color: #fff">&nbsp;</div>
<a href="#" id="escape">Escape!</a>

$("#escape").on("click",function(){
    $("#HideMe").show();
    location.href = "/*New URL*/";
});

http://jsfiddle.net/ySq8L/

于 2013-02-12T02:43:59.747 に答える
0

Mousetrapをご覧ください。これにより、キーバインドが比較的簡単になります。それを使用すると、次のようなことができます。

Mousetrap.bind('esc', function(e) {
    window.location.history.back();
    // Or alternatively, window.close() to just close the window
    return false;
});
于 2013-02-12T02:38:22.643 に答える
0

多分これを試してください:

< a href="javascript:window.opener='x';window.close();">閉じる</a>

于 2013-02-12T02:38:23.067 に答える
0

window.location.replaceトリックを行うには使用しませんか?

http://jsfiddle.net/atesgoral/xS3q5/

ブラウザーの [戻る] ボタンをクリックしても、履歴が上書きされるため、前のページには戻りません。

于 2013-02-12T02:39:53.350 に答える