jq爲a標籤綁定的onclick事件在移動端不響應

問題描述

項目用的jQuery + Bootstrap進行開發,其中用到Bootstrap的導航欄
當頁面在移動端打開的時候,導航欄會收縮,就是這樣的:

clipboard.png

clipboard.png

其中我爲下拉菜單的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 () {}

總結

  • 其實具體原因我不知道是什麼,煩請知道的大佬們提點一下我。
  • 網上找的各種方法也說一下吧,做個筆記
  1. 很多人是說移動端不支持點擊事件,換成touch事件或者tap事件試試。
  2. $("*").bind("click",function(){}); // 在頁面初始化時,爲其添加事件綁定

參考

IOS微信瀏覽器點擊事件不起作用問題
移動端微信內置瀏覽器(或QQ瀏覽器)無法識別onclick事件的解決

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章