[英]Detect a button inside of an iframe being clicked
我正在嘗試檢測 iframe 內部的按鈕點擊。 我目前已經研究了如何在我單擊 iframe 內部時讓它提醒我,但現在需要將其擴展到 iframe 內部的按鈕。 如果我需要完全重新創建代碼以使其更高效,我可以接受。
var monitor = setInterval(function(){
var elem = document.activeElement;
if(elem && elem.tagName == 'IFRAME'){
alert('Clicked');
clearInterval(monitor);
}
}, 100);
我不確定你為什么使用 setInterval。 以一種奇怪的方式,您模擬了 javascript 事件偵聽器,每 100 毫秒您檢查當前活動的元素是否是 IFRAME。 單擊它后,它將顯示警報,但如果您關注另一個元素然后返回 IFRAME,它將不會再次顯示警報。
解決此問題的方法是使用事件偵聽器。 像這樣:
注意:在 iframe 中添加一個名為“myFrame”的 ID。
const element = document.getElementsById('myFrame');
element.addEventListener("click", myFunction);
function myFunction() {
alert('Clicked');
}
您也應該對按鈕使用完全相同的方法,只有您會在getElementById
中獲得按鈕。
setInterval 的目的是每 x 毫秒運行一次特定代碼。 JS 足夠復雜,可以為您提供所有 API 來處理您將需要的一切。 通常,您只會將 setInterval 用於您可能實現的奇特算法,但通常,對於構建普通網站,您很少需要它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.