2013-07-22 7 views
7

ページを閉じた後に何か警告を出そうとしています。jQueryでwindow.unload()が機能しない

以下のように簡単window.unload例:

HTML

<html> 
<body> 
    <script src="http://code.jquery.com/jquery-1.10.1.min.js"></script> 
    <script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js"></script> 
    <script src="test.js" type="text/javascript"> 
</html> 

test.js

$(window).unload(function() { 
    alert("Bye now!"); 
}); 

P.S:

私もjavascriptを試しましたが、何も警告しません!

test.js

window.onunload = function() { 
    alert("Bye now!"); 
}; 
+0

) '(:

$(window).on('beforeunload', function() { // Do stuff }); 

(私は上記の記事に、この最後のビットをコメントするつもりだったが、私はまだコメントできません[ブラウザのウィンドウが閉じるときに確認するjavascript]の重複が可能です。(http://stackoverflow.com/questions/805463/javascript-to-check-when-the-browser-window-is-close) – Quentin

+2

.onbeforeunload'? – tymeJV

答えて

22

ほとんどのブラウザはunloadalertを防ぎます。

window.onbeforeunload = function() { 
    return "Bye now!"; 
}; 

Demo here.

+0

ありがとう。onbeforeunloadは魅力的な働きをしていますが、FireFoxではChrome上で動作しません!!! –

+1

@HamedKamrava: 'alert'を呼び出すのではなく、文字列を返すのですか?私の更新された答えとリンクされたデモを参照してください。 – RichieHindle

+0

それは魅力のように働いています:)。 tnx –

0

使用bodyまたはdocument代わりの窓:ブラウザは、ユーザーにその文字列が表示されます - あなたができる最善のは、文字列を返すonbeforeunloadハンドラを使用することです。

+0

それはどちらも動作しません。 – Renan

1

このコードはどのブラウザでテストしていますか?

W3Schoolから次のリンクを確認すると、OperaとChromeはサポートしていません。 onbeforeunloadのためLINK

そして、実施例以下のようにjQueryを使用することです:

関連する問題