执行javascript函数?
问题描述:
我正在寻找一个JavaScript或jQuery的函数来执行我的功能newalert(),如果用户没有激活页面上,(也许与一些事件来检查光标位置,或者是这样的)执行javascript函数?
我会让使用它的setTimeout自动检查,我只是希望函数检查用户的可用性像Gmail聊天,接收到新的IM和你不看Gmail页面时,它起着哔哔声。
感谢
答
尝试使用window.onblur
事件,或者你可以有一个持续运行的计时器,当鼠标的位置是毫秒x量相同,执行功能。
例子:
var lastX, lastY = 0;
var act_timeout = null;
function doAction() {
alert('not active');
return false;
}
function move(e) {
if(e.clientY == lastY && e.clientX == lastX) {
act_timeout = setTimeout(doAction, 5000);
return;
}
lastX = e.clientX;
lastY = e.clientY;
act_timeout = clearTimeout(act_timeout);
}
window.onmousemove = move;
window.onblur = doAction;
答
你首先需要确定它意味着用户要主动活跃。活动的明显迹象包括窗口blur
事件,但你可能想看看这些人
- 窗口
blur
事件 - 没有鼠标活动:没有滚动,点击或移动
- 没有键盘活动 在 Quirksmode提供
鼠标事件及其注意事项的好名单。
一旦你确定这是什么意思是不活动的,当对立事件发生时,你可以清除定时器(鼠标移动/点击/滚动,窗口获得焦点,键盘事件是接收等)。
我尝试过,但它的作品只有一次,并执行警戒当页面好像加载内容。 感谢 – 2010-01-19 22:44:01