JavaScript:检测iframe内的链接点击

Pau*_*aul 6 javascript iframe click detection

如何使用JavaScript检测用户点击iframe内的链接?

Tim*_*own 9

假设您有一个ID为"myIframe"的iframe,并且iframe来自与主文档相同的域,则以下内容将检测文档中的任何位置.当文档可编辑时,这也可以使用,使用文档的onclick属性不会:

function iframeClickHandler() {
    alert("Iframe clicked");
}

var iframe = document.getElementById("myIframe");
var iframeDoc = iframe.contentDocument || iframe.contentWindow.document;

if (typeof iframeDoc.addEventListener != "undefined") {
    iframeDoc.addEventListener("click", iframeClickHandler, false);
} else if (typeof iframeDoc.attachEvent != "undefined") {
    iframeDoc.attachEvent ("onclick", iframeClickHandler);
}
Run Code Online (Sandbox Code Playgroud)


Ant*_*ton 4

您可以检查 iframe 加载事件

onLoad="alert(this.contentWindow.location);"
Run Code Online (Sandbox Code Playgroud)

或者在 jquery 上:

$('iframe#yourId').load(function() {
  alert("the iframe has been loaded");
});
Run Code Online (Sandbox Code Playgroud)

  • iframe 的加载无法检测 iframe 中链接的点击 (15认同)
  • 实际上,这对我有用,因为我不需要检测框架内的每次点击,而是点击等于 iframe 位置更改的链接。编辑:我只能接受这个答案,由于某种原因无法投票(但没有投反对票)。 (3认同)