窗口.除非页面重新加载,否则调整大小不起作用
Window.resize doesn't work unless page is reloaded
我有这个响应式布局。我想要实现的是,在"桌面"大小,一旦菜单链接被点击,它将导航到页面的那一部分。我希望"移动"尺寸也是如此。此外,一旦菜单链接被点击,菜单将滑升。
我有这两个东西的工作,但它只工作时,页面重新加载。总而言之,以下是问题:
- 在桌面大小:导航是好的,但当调整大小到移动菜单不显示。
- 在手机大小:导航工作正常,当调整大小到桌面也工作正常,但菜单一直在切换。
HTML
<div id="head" class="clearfix">
<a href="#" title="Pull Menu" id="pull">Pull Menu</a>
<div class="menu-wrap clearfix">
<div class="nav">
<ul>
<li><a href="#test1" title="test1">test1</a></li>
<li><a href="#test2" title="test2">test2</a></li>
<li><a href="#test3" title="test3">test3</a></li>
</ul>
</div>
</div>
</div>
<div id="test1" class="section">Test1</div>
<div id="test2" class="section">Test2</div>
<div id="test3" class="section">Test3</div>
JavaScript var respMenu = function(event) {
var menu = $('.menu-wrap');
if ($(window).width() < 501) {
$("#pull").on('click', function() {
menu.slideToggle('slow');
});
$(".nav ul li a").click(function() {
menu.slideUp('slow');
});
}
else{
}
return false;
event.preventDefault();
};
var onClick = function() {
$('a').bind('click',function(event){
var $anchor = $(this);
if ($(window).width() > 500) {
$('html, body').stop().animate({
scrollTop: $($anchor.attr('href')).offset().top - 90 }, 1000,'easeInOutExpo');
}
else{
$('html, body').stop().animate({
scrollTop: $($anchor.attr('href')).offset().top - 50 }, 1000,'easeInOutExpo');
}
event.preventDefault();
});
};
$(window).load(function(){
respMenu();
onClick();
});
$(window).resize(function(){
respMenu();
onClick();
});
问题是,每次您的window
重新调整大小时,您都会绑定一个新的处理程序到单击事件,并且您永远不会取消绑定它们。因此,处理程序的数量不断增加,这意味着一旦您重新调整窗口大小,单击后将触发多个事件。
所以你可以做的是使用unbind
或off
方法解除绑定处理程序。
看这里:http://jsfiddle.net/yohanrobert/p987prdd/
相关文章:
- 我需要一种自动调整iframe大小的方法,无论我查到什么,它都不起作用
- jQuery 可调整大小() 不起作用(带有示例)
- jquery在调整大小时响应不起作用
- 可拖动或可调整大小的文本区域不起作用
- jQuery-ui 可调整大小,在 Marionette.ItemViem 上不起作用
- jquery调整大小函数没有'不起作用
- 可调整大小的包含对我不起作用
- 旋转图像w/jQuery..但是调整大小不起作用
- JQuery 可调整大小的取消不起作用
- TinyMCE 自动调整大小插件不起作用
- 如何在客户端上调整图像大小,不起作用
- 窗口.调整大小到不起作用
- iframe 自动调整高度大小不起作用
- Jquery UI 在新元素上可调整大小不起作用
- iframe调整器不起作用/源页面甚至无法滚动
- 完整日历:在开始日期启用时间时,调整大小不起作用
- IE javascript图像大小调整不起作用
- 在小酒窝.js中对我的图表进行响应式大小调整不起作用
- 使用强制重新加载或导航回主页时,背景图像大小调整不起作用
- 窗口大小调整不起作用