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

更新

演示地址能夠在開發者工具裏看看移動端的表現。不過這個版本是正常工做的,是我已經根據評論區大神來改變了a標籤點擊事件的綁定方式了的。以下圖所示,註釋的那行是我本來的代碼,註釋下面一行是修改過的。javascript

clipboard.png

問題描述

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

clipboard.png

clipboard.png

其中我爲下拉菜單的a標籤在js中綁定了onclick事件:java

jQuery(document).ready(function($){
  'use strict';
   $('#see').click(seeArrange)  // 會議安排
   function seeArrange () {}
   //...
}

一切在PC端運行正常,可是在移動端的時候,a標籤綁定的onclick事件在移動端就沒有響應。git

解決

在網上看了不少方法以後,我以爲多是移動端收縮以後的那個導航欄容器裏的a沒有綁定到點擊事件。所以我就換成在html裏綁定事件,結果就點擊正常了。。。github

// 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事件的解決瀏覽器

相關文章
相關標籤/搜索