在iframe跨域中捕获点击位置

时间:2015-04-15 01:27:05

标签: javascript jquery html iframe cross-domain

我遇到跟踪点击位置的问题,当它是跨域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上使用mousedown和mouseup

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

但指针事件:没有禁止点击,因此移动iframe工作,但当用户点击没有任何操作时。

也许你有一些想法如何跟踪iframe窗口上的鼠标点击?

1 个答案:

答案 0 :(得分:0)

我有一种感觉,这将成为您打算与其他人民网站混淆的安全模型的一部分。如果您对其他域上的页面没有任何控制权,那么您的javascript选项通常为零,我担心。 (如果你可以控制另一个域,那个页面上的脚本报告回到父框架页面)

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

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