如果鼠标一段时间没有移动,我会尝试隐藏鼠标。
这是我正在使用的代码:
$(document).ready(function() {
var j;
$(document).mousemove(function() {
clearTimeout(j);
$('html').css({cursor: 'default'});
j = setTimeout('hide();', 1000);
});
});
function hide() {
$('html').css({cursor: 'none'});
}
当调用 hide() 函数时,光标会被隐藏,但会在一瞬间取消隐藏。任何帮助表示赞赏。
您最初的问题是隐藏鼠标触发器mousemove
从而立即将其重置回默认值。所以你可以像这样解决这个问题...
var justHidden = false;
$(document).ready(function() {
var j;
$(document).mousemove(function() {
if (!justHidden) {
justHidden = false;
console.log('move');
clearTimeout(j);
$('html').css({cursor: 'default'});
j = setTimeout('hide();', 1000);
}
});
});
function hide() {
$('html').css({cursor: 'none'});
justHidden = true;
}
……但是……
你在这里遇到了一个目前对我来说似乎无法解决的问题。即隐藏鼠标不触发mousemove
永远,所以一旦它被隐藏,据我所知,你将无法取消隐藏它。
我会继续调查,看看是否有我缺少的解决方案。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)