滚动时关闭的jquery切换?

时间:2017-01-24 20:22:41

标签: javascript jquery html toggle

我有一个非常困难的客户端要求当用户向下滚动页面时关闭jquery切换,而不是在用户折叠它时自动保持打开/关闭...

那会有可能吗?我的jquery非常简单......



$(document).ready(function() {
  $('.nav-toggle2').click(function() {
    //get collapse content selector
    var collapse_content_selector = $(this).attr('href');
    //make the collapse content to be shown or hide
    var toggle_switch = $(this);
    $(collapse_content_selector).toggle(function() {
      if ($(this).css('display') == 'none') {
        //change the button label to be 'Show'
        toggle_switch.html('Contact Us');
      } else {
        //change the button label to be 'Hide'
        toggle_switch.html('Contact Us <');
      }
    });
  });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<tag href="#contactus" class="nav-toggle2">Contact Us &lt;</tag>
<div id="contactus">some content that hides/shows here</div>
&#13;
&#13;
&#13;

我可以在jquery中解决但是当它将新效果集成到它中时有点天真....是否可以在滚动时使用toggle_switch.html,这样当用户可能获得1/3的页面时,它隐藏?

1 个答案:

答案 0 :(得分:0)

根据您的评论,您说您还没有尝试过收听滚动事件。你能试试吗? 它将是这样的(代码未经测试):

  $(window).on("scroll", function(){
        // you can replace this with your hiding toggle logic 
        $('.nav-toggle2').toggle('false');
  });

您可能希望稍后从窗口取消绑定事件以避免内存泄漏。 有关滚动的参考:Jquery scroll api