问题跟踪鼠标运动中的iframe



详细信息: -

在我们的项目中,我们需要实施一个功能,如果用户不活动5分钟,则需要将其注销。如果用户在5分钟内没有移动鼠标,我们需要将其视为不活动。

我们能够在所有普通页面中实现这一目标,但是在一个页面中遇到困难,在一个页面中,我们在页面中有一个iframe,并且iframe播放视频和其他SWF,MP4文件。在iframe内部,还有另一个框架充当内容的包装器。

在上页面中,我们无法跟踪鼠标的运动,因此无法检测到用户是否处于活动状态。

经过大量的研究,我们实施了代码,如果我们通过浏览器控制台运行,但是当我将其保存在页面上时不起作用。

有人从事类似功能还是知道与此相关的任何事物?如果有人可以帮助我完成此功能,那就太好了。

注意: - 也单击IFRAMES

iframe的来源从技术上讲是自己的文档(文档pecception?)。诀窍是聆听本文档中的鼠标事件。尽管我不允许使用相同的原始策略,但您总是可以尝试一下。

使用普通JS:

var iframeDocument = document.querySelector('iframe').contentDocument;
iframeDocument.addEventListener('mousemove', function (event) {
    console.log(event.pageX, event.pageY);
});

使用jQuery:

$('iframe').contents().mousemove(function(e) {
    console.log(e.pageX, e.pageY);
});

您可以通过将IFRAME文档中的所有事件派遣到父文档中。这使您有优势仅在所有事件中使用一个侦听器,无论它们是否来自<iframe>内部。

最新更新