slideDown/Up和scrollTop窃听海誓山盟

问题描述:

向下滚动150px时,div将出现在左侧(slideDown)。当你按下向上按钮时,窗口应该向上滚动并且div应该隐藏(slideUp)。发生这种情况,但div滑动,然后再下降,然后返回。有什么问题?下面是代码:slideDown/Up和scrollTop窃听海誓山盟

function checkSize() { 
    if ($(window).width() > 1250) { 
      $(window).scroll(function() { 
       if ($(document).scrollTop() > 150) { 
        $("nav#menu-float").slideDown("800"); 
       } 
       else { 
        $("nav#menu-float").slideUp("800"); 
       } 
      }); 
    } 
    else { 
     $("nav#menu-float").hide(); 
    } 
} 

checkSize(); 
$(window).resize(function() { 
    checkSize(); 
}); 

//Back to top 
$("div#toTop a").click(function(e) { 
    $("body,html").animate({ 
      scrollTop: 0 
    }, 800); 
    $(this).parents("nav#menu-float").slideUp("800"); 
    e.preventDefault(); 
}); 

编辑移除链接测试,因为该链接已经走了死亡病例。

我想你可以删除

$(this).parents("nav#menu-float").slideUp("800"); 

线,从$("div#toTop a").click(function(e)
的效果基本show事件被调用两次:1.on点击事件和点击再次2.That滚动事件试图调用滚动事件在滚动到顶部'0'时再次向上滑动...

+0

你说得对。这很简单,我忽略了它。谢谢。我会尽快奖赏赏金。 – 2012-08-21 16:37:27