0

ファイルアップロードサービスを行っています。ファイルがアップロードされている間、ユーザーはページにとどまる必要があるため、window.onbeforeunload を使用します。

window.onbeforeunload = function() {
    return 'You still have files uploading...';
};

ユーザーがページをリロードしたり、ページを閉じたり、新しい URL に移動したりしようとすると、ブラウザーが警告を表示し、ユーザーはそのページにとどまることができます。

これは機能しますが、Chrome で奇妙な動作が見つかりました。

よくアクセスするサイトの URL に移動しようとしても、ユーザーにポップアップは表示されず、要求されたページにすばやく移動します。私の場合、これを reddit.com、facebook.com で動作させることができましたが、dog.com では動作しませんでした。

事前レンダリング、または Chrome が持つその他の最適化と関係がある可能性があると思います。これにより、onbeforeunload が無視されます

http://ge.ttにアクセスしてファイルのアップロードを開始することで試すことができます。次に、別の URL に移動し、よくアクセスする Web サイトを選択します。Chrome では (誤って) それができるはずです。

誰もこれについて何をすべきか知っていますか? onbeforeunload はもはや使用すべきものではありませんか?

4

0 に答える 0