2016-07-07 24 views
0

我正在使用scrollTop()事件來顯示/隱藏div在某些位置也我使用onClick()事件來永久隱藏div,事件運行良好,但問題是當我滾動頁面,然後div再次顯示。 我的代碼如下。如何在點擊onClick()事件後禁用scrollTop()效果

Javascript代碼

<script type="text/javascript"> 
    $(document).scroll(function() { 
     if (screen.width > 768) { 
      var y = $(this).scrollTop(); 
      if (y < 500) { 
       $('.benchdiv').fadeOut(); 
      } 
      else { 
       $('.benchdiv').fadeIn(); 
      } 
     } 
    }); 
</script> 
<script type="text/javascript"> 
    $(document).ready(function(){ 
     $(".removebg").click(function(){ 
      $(".benchdiv").hide(); 
     }); 
    }); 
</script> 

HTML代碼

<div class="benchdiv"> 
    <a href="http://www.benchmarkemail.com?p=636276" target=_blank><img src="//www.benchmarkemail.com/images/partner/banners/125x125.gif" width="125" height="125" border="0" /></a> 
    <div class="benchremove"><a href="javascript:void(0);" class="removebg glyphicon glyphicon-remove"></a></div> 
</div> 
+0

嘗試使用布爾表示,如果你有進入的」。 removebg「功能,並檢查它之前淡入淡出 – Nestoraj

回答

1

使用

$(".benchdiv").remove(); 

,而不是

$(".benchdiv").hide(); 

永久刪除div。

有用嗎?

+0

謝謝它的工作正常 – Khetaram

0

您可以刪除元素:

$(".benchdiv").remove(); 

,或者如果你將使用它,你可以這樣做:

<script type="text/javascript"> 
var clicked = false; 
    $(document).scroll(function() { 
    if(!clicked){ 
     if (screen.width > 768) { 
      var y = $(this).scrollTop(); 
      if (y < 500) { 
       $('.benchdiv').fadeOut(); 
      } 
      else { 
       $('.benchdiv').fadeIn(); 
      } 
     } 
     } 
    }); 
</script> 
<script type="text/javascript"> 
    $(document).ready(function(){ 
     $(".removebg").click(function(){ 
      $(".benchdiv").hide(); 
      clicked = true; 
     }); 
    }); 
</script>