乐趣区

jq为a标签绑定的onclick事件在移动端不响应

问题描述
项目用的 jQuery + Bootstrap 进行开发,其中用到 Bootstrap 的导航栏当页面在移动端打开的时候,导航栏会收缩,就是这样的:

其中我为下拉菜单的 a 标签在 js 中绑定了 onclick 事件:
jQuery(document).ready(function($){
‘use strict’;
$(‘#see’).click(seeArrange) // 会议安排
function seeArrange () {}
//…
}
一切在 PC 端运行正常,但是在移动端的时候,a 标签绑定的 onclick 事件在移动端就没有响应。
解决
在网上看了很多方法之后,我觉得可能是移动端收缩之后的那个导航栏容器里的 a 没有绑定到点击事件。因此我就换成在 html 里绑定事件,结果就点击正常了。。。
// html
<li><a href=”javascript:void(0);” id=’see’ onclick=”seeArrange();”> 会议议程 </a></li>

// js
jQuery(document).ready(function($){
‘use strict’;
// $(‘#see’).click(seeArrange) // 会议安排
// …
}

function seeArrange () {}

总结

其实具体原因我不知道是什么,烦请知道的大佬们提点一下我。
网上找的各种方法也说一下吧,做个笔记

很多人是说移动端不支持点击事件,换成 touch 事件或者 tap 事件试试。
$(“*”).bind(“click”,function(){}); // 在页面初始化时,为其添加事件绑定

参考
IOS 微信浏览器点击事件不起作用问题移动端微信内置浏览器(或 QQ 浏览器)无法识别 onclick 事件的解决

退出移动版