【发布时间】:2016-07-03 03:49:43
【问题描述】:
所以我试图只使用 jquery 淡入导航背景,但是这样做时,它也会以某种方式使导航链接随着导航背景淡出。
这是我的代码:
if ($(this).scrollTop() > 200) {
$('.navigation').fadeIn(500).css('background-color', '#787878');
} else {
$('.navigation').fadeOut(500).not("ul li a");
}
这是导航
`nav class="navigation" id="nav">
<ul>
<li><a href="#top" id="tp_link" class="active">Top</a></li>
<li><a href="#item2" id="f_link">Item 2</a></li>
<li><a href="#item3" id="s_link">Item 3</a></li>
<li><a href="#item4" id="c_link">Item 4</a></li>
<li><a href="#bottom" id="sm_link">Botton</a></li>
</ul>
</nav>`
我尝试使用not() 函数仅省略链接,这样当用户向上滚动时,唯一剩下的就是带有背景图像的链接本身。唯一应该消失的是它背后的背景颜色。
任何关于 jQuery 的建议都会有所帮助。我对它很陌生
【问题讨论】:
-
.navigation是包含链接的<div>吗? -
其实更像
<nav class="navigation"> -
链接在
<nav>元素内? -
我使用 HTML 添加了导航模块
-
因此调用
$('.navigation').fade()将应用于整个.navigation元素,包括所有子元素(即链接)。
标签: javascript jquery html dom