javascript - 更改始终在顶部菜单并淡出 php/js

标签 javascript php jquery html css

我想在网站上制作 1 个“始终位于顶部”的菜单。当你实际上在顶部时,我没有什么不同,如果你向下滚动,菜单就会改变。 我的问题是,当菜单改变时,我会得到新的 1。 我想要随着褪色而改变,但我不知道如何做到这一点。 (示例淡出始终在顶部更改菜单: http://www.aquariushand.hu/ ) 这是我所拥有的:

HTML:

<div id="navi">
<div id="menu" class="default">
<img align="left" width="15%" height="100%" src="pics/a.jpeg"/>
    <ul>
        <li><a href="#">Rólunk</a></li>
        <li><a href="#">Lakóknak</a></li>
        <li><a href="#">GYIK</a></li>
        <li><a href="#">Kapcsolat</a></li>

    </ul>
</div><!-- close menu -->

CSS:

#menu {
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #426d9c), color-stop(40%, #0f67a1), color-stop(100%, #1384d1));
background: -moz-linear-gradient(top, #426d9c, #0f67a1, #1384d1);

border-radius: 5px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;

line-height: 20px;
text-align: center;
margin: 0 auto;
padding: 0;
 z-index: 99;
}
.default {
width: 100%;
height: 50px;

box-shadow: 0 5px 20px #888;
-webkit-box-shadow: 0 5px 20px #888;
-moz-box-shadow: 0 5px 20px #888;
}

.fixed {
position: fixed;
top: -5px;
left: 0;
width: 100%;
height: 5%;

box-shadow: 0 0 40px #222;
-webkit-box-shadow: 0 0 40px #222;
-moz-box-shadow: 0 0 40px #222;
}

JS:

$(function(){

var menu = $('#menu'),
    pos = menu.offset();

    $(window).scroll(function(){
        if($(this).scrollTop() > pos.top+menu.height() && menu.hasClass('default')){
            menu.fadeOut('fast', function(){
                $(this).removeClass('default').addClass('fixed').fadeIn('fast');
            });
        } else if($(this).scrollTop() <= pos.top && menu.hasClass('fixed')){
            menu.fadeOut('fast', function(){
                $(this).removeClass('fixed').addClass('default').fadeIn('fast');
            });
        }
    });

});

我想要类似示例页面上的内容。

最佳答案

在你的 CSS 上,你应该添加 position 并给它固定值,例如

#menu {
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #426d9c), color-stop(40%, #0f67a1), color-stop(100%, #1384d1));
background: -moz-linear-gradient(top, #426d9c, #0f67a1, #1384d1);

border-radius: 5px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;

line-height: 20px;
text-align: center;
margin: 0 auto;
padding: 0;
  position:fixed;
 z-index: 99;
}
.default {
width: 100%;
height: 50px;

box-shadow: 0 5px 20px #888;
-webkit-box-shadow: 0 5px 20px #888;
-moz-box-shadow: 0 5px 20px #888;
}

无论如何,我不知道你在哪里使用 .fixed

关于javascript - 更改始终在顶部菜单并淡出 php/js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31516622/

相关文章:

php - 查找键的值,其中另一个键的值等于匹配值(关联数组)

javascript - jQuery .height() 无法正常运行

html - 围绕可变高度的 div 画一个完美的圆

javascript - i18next 显示键而不是值

Javascript - 数组如何在内部存储?

javascript - 滚动条的脚本错误

javascript - 如何禁用 apexcharts 上的下载选项?

javascript - 在 JavaScript 中回显 PHP 数组

php - 根据站点日期创建数据透视比较表

javascript - 如何调试鼠标移动