浮动菜单jquery悬停
我的网站上有以下浮动菜单:浮动菜单jquery悬停,jquery,css,Jquery,Css,我的网站上有以下浮动菜单: $(function() { var nav = $('nav'); var nava = $('nav a'); /* var navaOnHover = $('nav a:hover'); */ var navHomeY = nav.offset().top; var isFixed = false; var $w = $(window); nav.css({ background: '#222' });
$(function() {
var nav = $('nav');
var nava = $('nav a');
/* var navaOnHover = $('nav a:hover'); */
var navHomeY = nav.offset().top;
var isFixed = false;
var $w = $(window);
nav.css({ background: '#222' });
$w.scroll(function() {
var scrollTop = $w.scrollTop();
var shouldBeFixed = scrollTop > navHomeY;
if (shouldBeFixed && !isFixed) {
nav.css({
transition: 'all 0.30s ease-in-out',
position: 'fixed',
top: 0,
left: nav.offset().left,
width: nav.width(),
height: 59,
background: '#315d90'
});
nava.css({
color:'#fff'
});
/* navaOnHover.css({
color:'#000'
}); */
isFixed = true;
}
else if (!shouldBeFixed && isFixed)
{
nav.css({
height: 50,
position: 'static',
background:'#222'
});
nava.css({
color:'#fff'
});
/* navaOnHover.css({
color:'#000'
}); */
isFixed = false;
}
});
});
在第四行中,二十一行和四十一行分别以/*开头和*/结尾,我试图获得nav a:hover,当菜单向下浮动时,它负责鼠标悬停。
现在这不起作用了,变量navaOnHover没有得到nav a:hover值。
我怎样才能使它以这种方式或其他方式工作?
这一点很重要,因为如果向下滚动,然后再向上滚动,则悬停设置会更改,并且无论是否悬停,颜色fff都会保持不变。
如果我不清楚,请查看-向下滚动页面,然后向上滚动页面
谢谢。试试这个:
<script type="text/javascript">
$(document).ready(function(){
$(function() {
var nav = $('nav');
var nava = $('nav a');
var navHomeY = nav.offset().top;
var isFixed = false;
var $w = $(window);
nav.css({ background: '#222' });
$('nav a').hover(function(){
$(this).css({'color':'black'})
},function(){
$(this).css({'color':'white'})
})
$w.scroll(function() {
var scrollTop = $w.scrollTop();
var shouldBeFixed = scrollTop > navHomeY;
if (shouldBeFixed && !isFixed) {
nav.css({
transition: 'all 0.30s ease-in-out',
position: 'fixed',
top: 0,
left: nav.offset().left,
width: nav.width(),
height: 59,
background: '#315d90'
});
isFixed = true;
}
else if (!shouldBeFixed && isFixed)
{
nav.css({
height: 50,
position: 'static',
background:'#222'
});
isFixed = false;
}
});
});})
</script>
您不能在jQuery中使用:hover来选择元素,这就是为什么您的代码是错误的
如果您需要两个或多个条件hover state元素,请准备两个或多个css类,并以css样式编写它们自己的:hover。在jQuery中,根据您的条件更改类,然后:hover将自动应用。您不能使用:hover选择器使用javascript选择元素。只要把你所有的css放在一个css文件中,包括它们的悬停状态,并在顶栏是否固定的情况下切换某些类,我想我不明白。你能上传一把小提琴吗?非常感谢。但我还有一个问题,如果我增加默认的非浮动宽度的酒吧,我怎么能把酒吧的底部?谢谢认可的!!!