0

次のコードを使用して、ユーザーがブラウザ ボタンを閉じると、ページに留まるかどうかを確認するボックスが表示されるようにします。

私がやりたいことは、誰かがブラウザを閉じたときに、「はい」または「いいえ」のオプションで画像を表示することです。「はい」をクリックするとブラウザを閉じ、「いいえ」をクリックするとブラウザを閉じません。画像は、ポップアップではなく同じウィンドウに表示する必要があります。それは可能ですか、それとも JavaScript に期待しすぎているのでしょうか?

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<script type="text/javascript">
var exit=true;
    function confirmExit()
            {
            if(exit)
            {
            window.location.href = "?p=exit";
            }
            if(exit)
            return "Wait! Don't Leave Empty Handed!\n\nThank you for taking the time to check out our offer! Before you go we have a complimentary crash to help you succeed. Click the 'Cancel' or 'Stay On This Page' button if you're interested!";
            }
</script>
</head>
<body  onbeforeunload="return confirmExit()">
</body>
</html>
4

2 に答える 2

2

onbeforeunload()デフォルトの動作は各ブラウザにネイティブであるため、変更できません。カスタム文字列のみを返すことができます。

于 2012-12-11T13:33:20.997 に答える
1

これは本当に面倒なので、やめたほうがいいと思います。ただし、 を使用してポップアップを作成すると、必要なものを表示できますwindow.open。ただし、ポップアップ ブロッカーはそれをブロックする可能性があります。その場合、onbeforeunloadポップアップされたコールバックから文字列を返すことができますが、それはブラウザごとに処理されます (つまり、Firefox は、送り返す文字列ではなく、独自の文字列を出力します)。

繰り返しますが、クライアントが潜在的に重要な処理を行っていない限り、誰かがブラウザを閉じたり、他の方法で移動したりするのを止めるために何もしません.

于 2012-12-11T13:36:09.013 に答える