問題タブ [browser-close]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - ブラウザ ウィンドウまたはタブを閉じているときに Web サービスをヒットする方法は?
タブを閉じる前に Web サービスにアクセスする必要があるという問題に直面しています。私はこれを使用しています
タブを閉じているときにWebサービスにアクセスした場所がわからないため、ページにとどまってページを離れるプロンプトが表示されます。だから私は条件を実装し、それからWebサービスにヒットした場合、それ以外の場合は同じままです
javascript - Javascript/AngularJS でのブラウザの終了またはセッション ストレージのアンロードの検出/防止
javascript または AngularJS を使用して、ブラウザーまたはタブのクローズを検出し、ユーザーがダイアログ メッセージでそれを防止できるようにするにはどうすればよいですか?
ユーザーが状態を失うことなくページを更新できるように、データをセッション ストレージに保存する AngularJS アプリを持っています。
ユーザーがタブまたはブラウザーを閉じると、セッションがアンロードされるため、進行中の作業が失われます。セッションがいつ破棄されているかを検出し、続行すると進行中の作業が失われることをユーザーに通知するメッセージをユーザーに表示し、[OK] を選択してブラウザー/タブを閉じ続けるか、キャンセルして停止しないようにします。閉鎖。ユーザーが更新ボタンを押したり、新しいページに移動したりしたときではなく、ブラウザー/タブを閉じたときにのみメッセージを表示したい。
注 1 : ローカル ストレージではなく、セッション ストレージを使用する必要があります。これは、異なるタブがアプリの分離されたインスタンスである必要があり、データを共有できないためです。
注 2 : unload イベントと beforeUnload イベントを試しましたが、更新ボタンがクリックされたとき、またはユーザーがページから移動したときにも発生するため、これらは機能しません。セッションが破棄される前、つまりタブ/ブラウザが実際に閉じられたときにのみメッセージを表示したい。
注 3 : これは企業内で使用する企業向けアプリであり、すべてのユーザーとそのユース ケースを知っているので、ポップアップ メッセージで迷惑をかける心配はありません。ユーザーがアプリを閉じられないようにすることは、公開 Web サイトでのユーザー エクスペリエンスに悪影響を与えることを認識していますが、これは非常に制御されたシナリオです。
angular - リロードがクリックされたときにのみ関数を実行する方法は、angular 2+のbeforeunloadイベントでキャンセルされませんか?
更新/終了イベントで変更を次のように保存するように実装しました。
正常に動作していますが、リロード/キャンセルの両方のクリックで保存が行われます。
リロードとキャンセルのクリックを区別する方法はありますか?
例はこちら!ページが更新されるたびに上記の警告が表示され、ブラウザの戻るボタンを使用して後方に移動する場合にも表示されますが、同じことが1回の更新とブラウザの終了イベントでのみ機能します。
ここに何かが欠けていますか、それとも chrome/firefox がこの onbeforeunload イベントを更新して閉じるように制限していますか?
ありがとう。