[ブラウザ]タブを閉じることと、JavaScriptを使用してブラウザ全体を閉じることを区別する方法は?
JavaScriptはブラウザタブの閉鎖とブラウザの完全閉鎖を区別します
マルチタブブラウジングの毎日の使用では、ユーザーは単一のタブまたはブラウザ全体を閉じる必要がある場合があります。たとえば、いくつかのアプリケーションシナリオでは、ブラウザが完全に閉じている場合(ログイン情報のクリアなど)、単一のタブを閉じるときはそうではありません。この記事では、JavaScriptを使用してこれら2つの状況を区別し、対応するソリューションを提供する方法について説明します。
問題の説明
開発したWebアプリケーションが、WindowsシステムのChromeブラウザで実行されるとします。要件は、ユーザーがブラウザ全体を閉じるときにログイン情報をクリアし、単一のタブを閉じるときにログイン情報を変更しないようにすることです。この関数を実装する方法は?
解決
HTML5のsessionStorage
オブジェクトを使用して、この問題を解決できます。 sessionStorage
使用すると、キー価値ペアデータを同じセッションに保存できます。ブラウザを閉じると、 sessionStorage
のデータがクリアされ、単一のタブを閉じると他のタブのsessionStorage
データには影響しません。
特定の実装手順は次のとおりです。
-
ブラウザクローズイベントをリッスンします:
beforeunload
イベントを使用して、ブラウザのクローズまたはタブのクローズ操作をリッスンします。window.addeventlistener( 'beforeunload'、function(e){ //ここでログイン情報をクリアするためにコードを追加しますが、ここで直接実行することは、タブを閉じるときにクリアすることにもつながる可能性があることに注意する必要があります。 });
-
sessionstorageを使用して閉じる動作を区別します。各タブがロードされたら、
sessionStorage
アイテムを設定し、閉じたときにアイテムが存在するかどうかを確認します。存在する場合、タブページが閉じられていることを意味します。存在しない場合、ブラウザ全体が閉じられていることを意味します。//ページが読み込まれたときにsessionStorageを設定します window.addeventlistener( 'load'、function(){ sessionStorage.setItem( 'tabopen'、 'true'); }); //閉じたときにSESSIONSTORAGEを確認してください window.addeventlistener( 'beforeunload'、function(e){ if(!sessionStorage.getItem( 'tabopen')){ //ログイン情報ClearLoginInfo(); } それ以外 { // sessionStorageアイテムsessionStorage.RemoveItem( 'tabopen'); } }); 関数ClearLoginInfo(){ //ここでログイン情報をクリアするためにコードをConsole.log( 'ログイン情報のクリア...'); }
上記の方法を使用して、タブページを閉じることとブラウザの閉鎖を効果的に区別し、ブラウザが完全に閉じているときにログイン情報をクリアする操作を実行できますが、この操作は1つのタブページを閉じるときに実行されません。ブラウザとユーザー設定の特定の実装に応じて、ブラウザによってbeforeunload
イベントがインターセプトまたは遅延する可能性があることに注意する必要があります。信頼性を向上させるために、サーバー側のセッション管理などの他のテクノロジーを考慮することができます。
以上が[ブラウザ]タブを閉じることと、JavaScriptを使用してブラウザ全体を閉じることを区別する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

HTMLは、明確な構造のWebサイトを構築するために使用されます。 1)Webサイト構造などのタグを使用し、定義します。 2)例は、ブログとeコマースのウェブサイトの構造を示しています。 3)誤ったラベルネスティングなどの一般的な間違いを避けてください。 4)HTTP要求を削減し、セマンティックタグを使用してパフォーマンスを最適化します。

to inertanimageintoanhtmlpage、usethetagwithsrcandaltattributes.1)usealttextforaccessibilityandseo.2)emplencesrcsetForresponsiveimages.3)applylazyloadingwithloading = "lazy" tooptimizeperformance.4)

HTMLの中心的な目的は、ブラウザがWebコンテンツを理解して表示できるようにすることです。 1。HTMLは、タグなどのタグを介してWebページの構造とコンテンツを定義します。 3.HTMLは、ユーザーの相互作用をサポートするフォーム要素を提供します。 4. HTMLコードの最適化は、HTTP要求の削減やHTMLの圧縮など、Webページのパフォーマンスを改善できます。

htmltagsareSterenceforwebdevelovementasyStheStructureanhandhancewebpages.1)theydefineLayout、semantics、and-interactivity.2)semanticagsimprovecessibility.3)opeusofusofagscanoptimizeperformanceandensurecross-brows-compativeation。

コードの読みやすさ、保守性、効率を向上させるため、一貫したHTMLエンコーディングスタイルは重要です。 1)低ケースタグと属性を使用します。2)一貫したインデントを保持し、3)シングルまたはダブルの引用符を選択して固執する、4)プロジェクトのさまざまなスタイルの混合を避け、5)きれいなスタイルやEslintなどの自動化ツールを使用して、スタイルの一貫性を確保します。

Bootstrap4にマルチプロジェクトカルーセルを実装するソリューションBootstrap4にマルチプロジェクトカルーセルを実装するのは簡単な作業ではありません。ブートストラップですが...

マウススクロールイベントの浸透の効果を実現する方法は? Webを閲覧すると、いくつかの特別なインタラクションデザインに遭遇することがよくあります。たとえば、DeepSeekの公式ウェブサイトでは、...

HTMLビデオのデフォルトの再生コントロールスタイルは、CSSを介して直接変更することはできません。 1. JavaScriptを使用してカスタムコントロールを作成します。 2。CSSを介してこれらのコントロールを美化します。 3. video.jsやPLYRなどのライブラリを使用すると、互換性、ユーザーエクスペリエンス、パフォーマンスを検討してください。プロセスを簡素化できます。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

ドリームウィーバー CS6
ビジュアル Web 開発ツール
