中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

iOS中Safari點擊事件失效怎么辦

發布時間:2021-07-12 14:39:12 來源:億速云 閱讀:146 作者:小新 欄目:移動開發

小編給大家分享一下iOS中Safari點擊事件失效怎么辦,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

問題描述

當使用委托給一個元素添加click事件時,如果事件是委托到 document 或 body 上,并且委托的元素是默認不可點擊的(如 div, span 等),此時 click 事件會失效。

可以使用下面的代碼在 iOS 中進行測試。

<!DOCTYPE html> 
<html> 
<head> 
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width">
 <title>iOS click bug test</title>
 <style>
 .container {
 }
 .target {
  display: block;
  text-align: center;
  margin: 100px 30px 0;
  padding: 10px 0;
  border: 1px solid #ccc;
 }
 </style>
</head> 
<body> 
 <div class="container">
 <div class="target"> Click Me! </div>
 </div>
 <script src="//code.jquery.com/jquery-2.1.4.min.js"></script>
 <script type="text/javascript">
 // 或者 $(document).on('click', ....)
 $('body').on('click', '.target', function (e) {
  alert('click');
 });
 </script>
</body>
</html>

解決辦法

解決辦法有 4 種可供選擇:

  • 將 click 事件直接綁定到目標元素(即 .target)上

  • 將目標元素換成 <a> 或者 button 等可點擊的元素

  • 將 click 事件委托到非 document 或 body 的父級元素上

  • 給目標元素加一條樣式規則 cursor: pointer;

推薦后兩種。

從解決辦法來看,推測在 safari 中,不可點擊的元素的點擊事件不會冒泡到父級元素。通過添加 cursor: pointer 使得元素變成了可點擊的了。

以上是“iOS中Safari點擊事件失效怎么辦”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

兴仁县| 张掖市| 缙云县| 汽车| 晋宁县| 保山市| 翁牛特旗| 崇阳县| 阳泉市| 建瓯市| 文山县| 剑河县| 荥经县| 衡南县| 西畴县| 宽甸| 青岛市| 穆棱市| 怀来县| 泸定县| 柘荣县| 渭南市| 上栗县| 桐柏县| 赤城县| 永善县| 枣阳市| 广州市| 宜昌市| 荣成市| 大丰市| 天等县| 沾化县| 迭部县| 高尔夫| 辽阳市| 福州市| 尤溪县| 合川市| 永新县| 溧水县|