微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery – 滚动时如何缩小导航菜单?

对于正在开发的新网站,当用户向下滚动时,我希望缩小导航菜单.

类似于您可以在IBM站点看到的内容http://www.ibm.com/us/en/

我找不到任何jQuery实现或教程(我确定我必须搜索错误的关键字)

所以如果有人能指出我正确的方向,那会让我真的很开心.

提前致谢!

解决方法

这里你去男人:
$(function(){
  var navstatesInPixelHeight = [40,100];

  var changeNavstate = function(nav,newStateIndex) {
    nav.data('state',newStateIndex).stop().animate({
      height : navstatesInPixelHeight[newStateIndex] + 'px'
    },600);    
  };

  var boolToStateIndex = function(bool) {
    return bool * 1;    
  };

  var maybeChangeNavstate = function(nav,condState) {
    var navstate = nav.data('state');
    if (navstate === condState) {
      changeNavstate(nav,boolToStateIndex(!navstate));
    }
  };

  $('#header_nav').data('state',1);

  $(window).scroll(function(){
    var $nav = $('#header_nav');

    if ($(document).scrollTop() > 0) {
      maybeChangeNavstate($nav,1);
    } else {
      maybeChangeNavstate($nav,0); 
    }
  });
});

演示:http://jsfiddle.net/seancannon/npdqa9ua/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


jQuery表单验证提交:前台验证一(图文+视频)
jQuery表单验证提交:前台验证二(图文+视频)
jQuery如何实时监听获取input输入框的值
JQuery怎么判断元素是否存在
jQuery如何实现定时重定向
jquery如何获取复选框选中的值
jQuery如何清空form表单数据
jQuery怎么删除元素节点
JQuery怎么循环输出数组元素
jquery怎么实现点击刷新当前页面