我正在使用响应式设计,我想只在屏幕小于1020px时才在点击事件上添加一个带有Jquery的dropdow函数。我正在使用调整大小功能,当客户更改浏览器窗口的大小时,该功能会触发。
但问题是该功能正在冒泡并运行5次。怎么可能???
$(window).resize(function() {
var screenWindow = $j(document).width();
if(screenWindow < 1020){
$('.filter').click(function(){
$('dd.first').slideToggle();
});
}
});
感谢您的帮助。
答案 0 :(得分:2)
尝试
$('.filter').click(function() {
if( $(window).width() < 1020 ) {
$('dd.first').slideToggle();
}
return false;
});
把这个放在resize之外
页面上还有多少'dd'和多少'.filter'?你能展示一些HTML吗? 如果您有多个.filter,则单击处理程序将多次运行。如果'dd'在过滤器内部,则代码可以更改,以便仅触发'dd'