Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Mengesan Klik Di Dalam Iframe Rentas Domain?

Bagaimanakah Saya Boleh Mengesan Klik Di Dalam Iframe Rentas Domain?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-01 17:24:11487semak imbas

How Can I Detect Clicks Inside a Cross-Domain Iframe?

Mengesan Klik dalam Iframe

Secara tradisinya, iframe merentas domain menimbulkan pengehadan dalam mengesan interaksi pengguna. Walau bagaimanapun, adalah mungkin untuk menjejak klik awal dalam iframe dengan menggunakan div tidak kelihatan yang diletakkan di atas iframe.

Pelaksanaan

Dalam pelayar web moden, JavaScript berikut boleh digunakan untuk memantau fokus tetingkap penyemak imbas:

const message = document.getElementById("message");

// Ensure the main document is focused to trigger window blur when the iframe is interacted with.
window.focus();

window.addEventListener("blur", () => {
  setTimeout(() => {
    if (document.activeElement.tagName === "IFRAME") {
      message.textContent = "clicked " + Date.now();
      console.log("clicked");
    }
  });
}, { once: true });

HTML Penanda

Untuk melengkapkan persediaan, penanda HTML berikut menambah div tidak kelihatan dan iframe:

<div>

Keserasian

Ini penyelesaian telah disahkan berfungsi dalam Chrome, Firefox dan IE 11. Ia berkemungkinan serasi dengan pelayar tambahan sebagai baiklah.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengesan Klik Di Dalam Iframe Rentas Domain?. 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