【发布时间】:2016-01-08 16:17:56
【问题描述】:
我一直在制作一些基本的移动导航,并且正在使用点击事件来显示/隐藏菜单。
简化的代码示例:
jQuery('.menu-button').click(function(){
jQuery('.header-nav').toggle();
console.log('clicked');
});
我一直在移动设备上进行远程调试,并且 console.log 始终有效,但 .header-nav toggle() 似乎随机不触发 - 我无法发现它的模式,但它始终保留在 DOM 中(它应该),所以它以某种方式被移除并不是它不发射的原因。
有什么想法吗?
【问题讨论】:
-
究竟如何保留在 DOM 中,
toggle没有删除任何东西,它只是隐藏了它? -
对不起 - 我的意思是它留在 DOM 中(它应该),所以它以某种方式被移除并不是它没有触发的原因。
-
使用 ontouch 事件而不是点击事件。 stackoverflow.com/questions/9122679/…
-
很可能点击事件有时会被触发两次,或者其他东西正在切换元素。
-
Kevin B - 实际上似乎确实如此 - 计算 console.log 的 - 知道为什么会这样吗?
标签: javascript jquery