这是我的侧边栏:
<ul id="sidebarupcoming">
<li><a href="#week36">WEEK 36 </a></li>
<li><a href="#week37">WEEK 37 </a></li>
<li><a href="#week38">WEEK 38 </a></li>
</ul>
我试图用这个脚本隐藏它
<!– Scroll –>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script type="text/javascript" src="http://static.tumblr.com/fgfmpgh/Qqfkzalyi/jquery.scroll.pack.js"></script>
<script type="text/javascript" src="http://static.tumblr.com/fgfmpgh/7xukzalz8/jquery.easing.js"></script>
<script type="text/javascript">
$(function() {
$("#sidebarupcoming").scrollToTop({speed:500,start:700});
});
</script>
<!– / Scroll –>
使用此脚本,“滚动显示”功能起作用,但是,当您单击链接时,“跳转到名称标签”将不起作用,相反,页面将跳至顶部。当我删除脚本时,跳转到名称标签即可,但是边栏不再隐藏。我该如何工作?(这是侧边栏“滚动显示”并跳到正确的名称标签吗?)
该scroll()
方法是的别名on('scroll', handler)
,是滚动滚动时触发的事件处理程序,它$(window).scrollTop()
返回到顶部的距离(以像素为单位)。你让喜欢自定义隐藏动画效果您的需求,我建议.animate()
,.hide()
或.fadeOut()
的JavaScript
$(function() {
$(window).scroll(function(e) {
if ($(this).scrollTop() > 700)
{
$("#sidebarupcoming").fadeIn("slow");
}
else
{
$("#sidebarupcoming").hide();
}
});
});
并单击锚点<a href='#week36'>WEEk 36 </a>
应能按预期工作,如果您希望为该元素设置滚动运动动画,则应查看此SO Answer。
在这种情况下,我建议向这些链接中的每一个添加一个类,animated-scroll
如下所示:
的JavaScript
$(".animated-scroll").click(function (e){
var elementID = $(this).attr('href');
e.preventDefault(); // stop default behaviour
$('html, body').animate({
scrollTop: $(elementID).offset().top
}, 2000);
});
的HTML
<ul id="sidebarupcoming">
<li><a href="#week36" class='animated-scroll'>WEEK 36 </a></li>
<li><a href="#week37" class='animated-scroll'>WEEK 37 </a></li>
<li><a href="#week38" class='animated-scroll'>WEEK 38 </a></li>
</ul>
学分:
检查jQuery文档
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句