2017-09-27 19 views
-1

私は.unload()意志が1.8後のバージョンでは非推奨と3.xで完全に除去されていることを明確に書かれているjQuery API Documentation

に与えられた機能.unload()のためのjQueryのドキュメントを読んでいました

私はこの.unload()機能に依存するローカルイントラネットアプリケーションを持っています。

window.onbeforeunload機能を手動で使用する必要がありますか、特定のブラウザでサポートされているかどうかを確認してください。ケビンによって示唆されるように

、jQueryので速記法であると推奨されていません私は

$(window).on("unload", function(e){ 
 
    return confirm("Do you really want to exit"); 
 
});
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script> 
 
Testing JQuery Unload in 3.x Version

Fiddle

を試みたが、それは

+3

beforeunloadを使用非推奨されていない '.on( 'アン'、機能())'と ')(' .unloadを交換してください。 –

+2

_ 1.8より後のバージョンではアンロード機能が償却されないことが明確に書かれています。 Kevin –

+0

@KevinKloetが提案した 'adddEventListener'の代わりの' on'メソッドを使用してください**私は**メソッドで**を使用しています。 私のフィドルがうまくいかない理由を見つけ出すのを手伝ってもらえますか?https://jsfiddle.net/vibs2006/bqge8x22/ – vibs2006

答えて

1

unloadが機能していません。 onを使用している場合は、JavaScriptにある同じイベントを使用して、onを削除する必要があります。ここで

、代わりにunload

//$(window).on("unload", function(e){ 
 
//    ^^^ 
 
$(window).on("beforeunload", function(e) { 
 
//   ^^^ 
 
    return confirm("Do you really want to exit"); 
 
});
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script> 
 
Testing JQuery Unload in 3.x Version

+0

Firefoxで動作していません – vibs2006

+0

@ vibs2006、Firefoxで動作します。 Firefoxがユーザーに離脱を許可するようにするには、ユーザーがページと適切に対話している必要があります。 [ドキュメントを読む](https://developer.mozilla.org/en-US/docs/Web/Events/beforeunload)する必要があります。 Firefoxはいくつかの条件下で 'confirm'の使用をブロックしていますが、' onbeforeunload'イベントが発生します。 Firefoxはまた、確認メッセージにカスタムメッセージを残してページを出ることを許可していないことに注意してください。 '$(window).unload()'が動作するが、 '$(window).on( 'beforeunload')'は動作しないケースを示す必要があります。 – Makyen

+1

@ vibs2006 [this JSFiddle](https://jsfiddle.net/wm1tu9qv/)のFirefoxで、テキスト領域に何も入力していないときと、テキスト領域に何かを入力した後の違いを試してみてください。 – Makyen

関連する問題