Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk Mengesan jika Konsol Chrome Dibuka?

Bagaimana untuk Mengesan jika Konsol Chrome Dibuka?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-10 04:49:02338semak imbas

How to Detect if the Chrome Console is Open?

Menemui Status Terbuka Konsol Chrome

Mengesan keadaan terbuka Firebug mempunyai pendekatan yang mudah dengan sifat window.console.firebug. Walau bagaimanapun, melanjutkan kaedah ini untuk mengesan konsol dalam Chrome telah terbukti lebih mencabar.

Percubaan awal untuk memanfaatkan sifat window.console.chrome tidak membuahkan hasil. Akibatnya, pada mulanya dipercayai bahawa tiada kaedah langsung untuk menentukan sama ada konsol Chrome dibuka.

Pendekatan Alternatif

Walaupun tiada penyelesaian langsung , penyelesaian telah ditemui dengan kaveat:

  • Penyahpepijat: Walaupun ia mungkin tidak boleh dipercayai sepenuhnya, menggunakan penyahpepijat masih boleh berkesan.
  • requestAnimationFrame: Pendekatan Muhammad Umer telah berjaya mengesan kedua-dua acara buka dan tutup dalam Chrome 78.
  • fungsi keString: Menggunakan objek fungsi kosong dan bukannya regex (/./ ) masih berfungsi, seperti yang dicadangkan oleh Overcl9ck.

Contoh Kod:

var devtools = function() {};
devtools.toString = function() {
  if (!this.opened) {
    alert("Opened");
  }
  this.opened = true;
}

console.log('%c', devtools);
// devtools.opened will become true if/when the console is opened

Pendekatan ini memanfaatkan kaedah toString untuk menogol bendera (devtools.opened ) apabila konsol dibuka.

Batasan Penyelesaian

Perlu ambil perhatian bahawa penyelesaian ini mungkin mempunyai had, seperti:

  • Tidak berfungsi apabila konsol dibuka.
  • Tidak berfungsi apabila konsol dibuka pada pemuatan halaman.

Atas ialah kandungan terperinci Bagaimana untuk Mengesan jika Konsol Chrome Dibuka?. 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