Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Menentukan Jika Konsol Chrome Dibuka?

Bagaimana untuk Menentukan Jika Konsol Chrome Dibuka?

Barbara Streisand
Barbara Streisandasal
2024-11-07 11:53:021064semak imbas

How to Determine If the Chrome Console is Open?

Cara Menentukan Keterlihatan Konsol Chrome

Mengesan sama ada konsol Chrome dibuka boleh menjadi satu cabaran kerana ketiadaan bendera khusus. Walau bagaimanapun, terdapat kaedah alternatif yang boleh menyediakan penyelesaian.

Satu pendekatan melibatkan penggunaan penyahpepijat:

if (typeof Debugger !== "undefined") {
  console.log("Chrome console is open");
}

Walaupun kaedah ini telah ditamatkan, ia masih boleh berfungsi dalam beberapa situasi.

Teknik lain memanfaatkan requestAnimationFrame:

let isConsoleOpen = false;

requestAnimationFrame(() => {
  isConsoleOpen = true;
});

setInterval(() => {
  if (isConsoleOpen) {
    console.log("Chrome console is open");
  }
}, 1000);

Pendekatan ini bergantung pada konsol yang menutup gelung requestAnimationFrame, dengan itu membenarkan pengesanan kedua-dua acara terbuka dan tertutup.

Akhir sekali, a pilihan ketiga menggunakan kaedah toString fungsi:

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

console.log("%c", devtools);

if (devtools.opened) {
  console.log("Chrome console is open");
}

Kaedah ini mengesan keterlihatan konsol berdasarkan pembukaan log konsol.

Adalah penting untuk ambil perhatian bahawa tiada kaedah ini sempurna, kerana terdapat senario tertentu yang mungkin tidak berfungsi seperti yang diharapkan. Walau bagaimanapun, mereka menyediakan pilihan yang berdaya maju untuk mengesan keterlihatan konsol Chrome.

Atas ialah kandungan terperinci Bagaimana untuk Menentukan 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