在我的example 事件触发器中,即使鼠标未移动但位于容器内也是如此。
var page = $('.Page'),
consoleContainer = $('.Console');
page.mousemove(null, function(e){
var mousePosX = (e.pageX/$(window).width())*100;
consoleContainer.val('mousePos: ' + mousePosX + ' randomNumber: ' + Math.random());
});
我想要: 如果鼠标没有移动但在容器内,事件应该不起作用
PS:对不起我的英语技能
答案 0 :(得分:0)
也许你可以保存前一个光标位置,当mousemove事件被触发时,检查它是否等于当前鼠标位置。
类似的东西:
var page = $('.Page'), consoleContainer = $('.Console');
var prevPos = '';
page.mousemove(null, function(e)
{
var currPos = e.pageX + '-' + e.pageY;
if (prevPos != currPos)
{
prevPos = currPos;
var mousePosX = (e.pageX / $(window).width()) * 100;
consoleContainer.val('mousePos: ' + mousePosX + ' randomNumber: ' + Math.random());
}
});
我测试了它并且按预期工作。
希望它可以帮到你 请原谅我可怕的英语。
亲切的问候