单击插件时保留浏览器窗口焦点

时间:2011-09-07 08:38:35

标签: javascript flash window onblur

我有一个网页,它使用javascript计数器来计算用户“活动”时间,这意味着用户花费查看此页面的时间(而不是其他页面)。我这样做是通过使用document.onfocusout / onfocusin(IE)和window.onblur / onfocus(其他)​​启动/停止它们 但是,当用户点击同一页面内的插件(flash,java等)时,窗口会失去焦点并触发window.onblur。有没有办法告诉用户仍在我的页面上?

提前致谢

1 个答案:

答案 0 :(得分:0)

这确实是一个问题。但你可以欺骗自己的方式。 Flash Player能够与其脚本主机通信,在您的情况下是JavaScript主机。你所做的是当Flash Player影片获得焦点时,我相信你能够捕获ActionScript,你可以使用ExternalInterface Flash Player类API对其进行编程以通知它的主机,这将调用JavaScript函数,它会再次启动计时器(并且可选地将焦点重新放回页面,因为大多数情况下从页面窃取焦点是坏主意。默认情况下,Flash Player会抢断焦点 - 如果单击Flash Player电影,键盘不再被JavaScript捕获,只能由Flash Player直接捕获。)

你明白我在说什么吗?