Rumah >hujung hadapan web >tutorial js >Bagaimanakah JavaScript Boleh Mengesan Ketidakaktifan Tetingkap Penyemak Imbas?

Bagaimanakah JavaScript Boleh Mengesan Ketidakaktifan Tetingkap Penyemak Imbas?

DDD
DDDasal
2024-12-22 18:46:10564semak imbas

How Can JavaScript Detect Browser Window Inactivity?

Mengesan Ketidakaktifan Tetingkap Penyemak Imbas menggunakan JavaScript

Menentukan sama ada tetingkap penyemak imbas tidak aktif dalam fokus adalah penting untuk mengoptimumkan prestasi dan pengalaman pengguna. JavaScript menyediakan beberapa pilihan untuk mencapai ini.

API Keterlihatan Halaman

API Keterlihatan Halaman menawarkan kaedah yang boleh dipercayai untuk mengesan apabila halaman disembunyikan daripada pengguna. API ini disokong oleh kebanyakan penyemak imbas moden, termasuk Chrome, Firefox dan Internet Explorer.

Untuk menggunakan API Keterlihatan Halaman, tambahkan pendengar acara berikut:

document.addEventListener("visibilitychange", onchange);

Dalam fungsi onchange , anda boleh menyemak harta document.visibilityState untuk menentukan sama ada halaman itu tersembunyi atau kelihatan:

function onchange(evt) {
  if (document.visibilityState == "hidden") {
    // Page is not active
  } else {
    // Page is active
  }
}

Fallback kepada Kabur/Fokus Acara

Untuk penyemak imbas yang tidak menyokong API Keterlihatan Halaman, anda boleh kembali menggunakan acara kabur dan fokus. Kaedah ini kurang dipercayai, kerana ia mungkin mencetuskan apabila pengguna menukar tab atau memaparkan tetingkap modal.

Untuk menggunakan acara kabur/fokus, tambahkan pendengar acara berikut:

window.onblur = function() {
  // Window is not active
};

window.onfocus = function() {
  // Window is active
};

Pertimbangan Keserasian

API Keterlihatan Halaman disokong oleh kebanyakan pelayar utama, manakala acara kabur/fokus disokong oleh semua penyemak imbas moden. Untuk keserasian maksimum, pertimbangkan untuk menggunakan API Keterlihatan Halaman jika disokong dan kembali kepada peristiwa kabur/fokus sebaliknya.

Dengan melaksanakan teknik ini, anda boleh mengesan dengan berkesan apabila tetingkap penyemak imbas tidak aktif dalam fokus dan melaraskan anda JavaScript sewajarnya, meningkatkan prestasi dan pengalaman pengguna di tapak web anda.

Atas ialah kandungan terperinci Bagaimanakah JavaScript Boleh Mengesan Ketidakaktifan Tetingkap Penyemak Imbas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn