在单一条件下检查scrollTop和id偏移量

时间:2016-07-14 13:12:38

标签: javascript jquery html

我想检查滚动位置是否大于350并且menuSticky偏移位置在相同条件下为92.该条件不起作用。我给了我的代码

 $(window).scroll(function(){
if(($(document).scrollTop() >= 350) && (($('.menuSticky').offset().top )==92)) {
           console.log('true');
           $('.dropdown').hover(function() {
          $('.secMenu').hide();
             $(this).toggleClass("open");
        }).mouseleave(function(){
          $('.secMenu').show();
        });    
       }
      });   

2 个答案:

答案 0 :(得分:0)

尝试用$(window).scrollTop()替换$(document).scrollTop()



 $(window).scroll(function() {
   if (($(window).scrollTop() >= 350) && (($('.menuSticky').offset().top) == 92)) {
     console.log('true');
     $('.dropdown').hover(function() {
       $('.secMenu').hide();
       $(this).toggleClass("open");
     }).mouseleave(function() {
       $('.secMenu').show();
     });
   }
 });




答案 1 :(得分:0)

您的代码工作没有任何问题,在下面的代码片段中,我使用您的代码时没有进行任何修改,但我给了.menuSticky margin-top:92px;,因此您的第二个条件将成立,并且工作正常。< / p>

&#13;
&#13;
$(window).scroll(function(){
  if(($(document).scrollTop() >= 350) && (($('.menuSticky').offset().top )==92)) {
    console.log('true');
  }
}); 
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div class="menuSticky" style="margin-top:92px"> Menu </div>
<div style="height:1000px;">Some content</div>
&#13;
&#13;
&#13;