将 onClick 应用到 Iframe

The*_*per 3 html javascript iframe

有没有办法用其他一些元素“封装”一个 Iframe 来模拟 onClick?我知道 Iframe 不支持事件,但我需要跟踪从我的网站离开 Iframe 的点击次数。

谢谢!

Sha*_*ard 5

如果框架包含来自同一域的页面(不违反同源策略),您可以直接与其文档交互:

<script type="text/javascript">
window.onload = function() {
    var oFrame = document.getElementById("myframe");
    oFrame.contentWindow.document.onclick = function() {
        alert("frame contents clicked");
    };
};
</script>
Run Code Online (Sandbox Code Playgroud)

如果它包含外部页面,那么您就不走运了-出于明显的安全原因,无法做您想做的事情。尽管所有内容在视觉上都是同一页面的一部分,但来自不同域的框架在脚本方面必须保持独立。否则任何页面都可能创建一个隐藏的 iframe 加载您的网络邮件并从中窃取您的会话 cookie。用户可以访问所有数据,但页面作者不应访问这些数据。