[英]jQuery on click not working FireFox - possibly event.preventdefault
我有以下适用于除 Firefox 之外的所有浏览器。 这似乎是阻止默认操作的问题,我该如何解决?
$(".subcontent .sidebar .mobileopen").on("click", function () {
event.preventDefault();
$('.subcontent .sidebar .mobileopen').toggleClass('removeborder');
$('.subcontent .sidebar nav.mobile').slideToggle();
$('.subcontent .sidebar nav.mobile ul li.menu-item-has-children > a').on("click", function () {
event.preventDefault();
$(this).nextAll('ul').eq(0).slideToggle('slow');
$(this).parent().toggleClass("open");
});
});
您尚未将event
参数传递给事件处理程序
$(".subcontent .sidebar .mobileopen").on("click", function (event) {
^^^^^
event.preventDefault();
Mozilla Firefox 没有 global event
。 检查https://stackoverflow.com/a/33167145/2025923 。
你也可以使用return false;
在事件处理程序的末尾,以防止元素的默认操作发生。 这也将停止事件冒泡。
这个对我有用
$("body").on("click", ".subcontent .sidebar .mobileopen" function (event) {
event.preventDefault();
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.