javascript - 鼠标移动时出现,静止时消失的导航栏

标签 javascript jquery html css mousemove

我希望我的导航栏只在鼠标移动时出现,否则不可见。它是固定位置的。我尝试使用

$( "html").mousemove(函数() {

等...

但即使当我将鼠标完全静止不动时,它似乎也会记录鼠标已移动。可能使这有点棘手的是,我希望当鼠标移动到文档中的任何位置时导航栏出现,而不仅仅是在导航栏区域中。只要鼠标不移动,导航栏就应该不可见。

这个想法本质上是只在用户移动鼠标(表示有意改变某些东西)时使导航栏可见,否则它会分散对内容的注意力。

最佳答案

你可以这样做:

HTML

<div>navbar</div>

JavaScript

$("div").hide();

$("html").mousemove(function( event ) {
    $("div").show();

    myStopFunction();
    myFunction();
});

function myFunction() {
    myVar = setTimeout(function(){
        $("div").hide();
    }, 1000);
}
function myStopFunction() {
    if(typeof myVar != 'undefined'){
        clearTimeout(myVar);
    }
}

http://jsfiddle.net/guinatal/GRyEe/2/

关于javascript - 鼠标移动时出现,静止时消失的导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23434004/

相关文章:

jquery - 在一定宽度下停止滚动菜单

android - Android 2.3 中显示不需要的符号,通过 li 或 ul 标签

html - 如果父级有带有 CSS 的子级,则将样式应用于父级

javascript - 来自 Angular 的 Http Post 请求不起作用

javascript - QWebEngine & QWebChannel : transport object `qt.webChannelTransport` disappeared after page reload

javascript - 正则表达式,如何在没有 ://的情况下选择//+

javascript - Jquery - 如何在悬停时更改 img src?

javascript - 非常棘手的 html 字符作为文本

html - 文字装饰 : line-through double; not working in chrome

javascript - Intl.NumberFormat 的指数符号