在 iframe 跨域中捕获点击位置



当它通过跨域的 iframe 时,我在跟踪点击位置时遇到了问题。

我的代码现在:

<div class="poin">
<iframe width="640" height="360" src="http://cross_domain" frameborder="0" allowfullscreen id="video"></iframe>
</div>

和JS:

$('.poin').bind("mousemove", function(e) {
console.log("x:" + e.pageX + ", y:" + e.pageY);
});
这一个代码,在iframe窗口上移动时不

显示任何内容,但是在显示所有内容的窗口上移动时。

我也尝试了在iframe上按下鼠标和向上鼠标

onmousedown="$(this).addClass(point)" onmouseup="$(this).removeClass(point)"
.point{
pointer-events:none;
}
但是

指针事件:无不允许点击,所以在iframe上移动是有效的,但是当用户点击时什么都不会发生。

也许您有一些想法如何做这样的事情来跟踪iframe窗口上的鼠标单击?

我有一种感觉,这将是旨在防止您弄乱其他人网站的安全模型的一部分。如果你对不同域上的页面没有任何控制权,那么你的javascript选项恐怕通常为零。(如果可以控制其他域,则在该页面上有一个脚本报告回父框架页面)

您可以尝试在iframe的顶部放置一个透明元素,以检测其上的运动。当然,这也会阻止使用与框架页面交互,但是如果您可以指示用户双击,然后您可以在第一次单击时删除透明元素,允许第二次点击框架页面。

不幸的是,这是您不应该跨域做的事情。

相关内容

  • 没有找到相关文章

最新更新