在IOS设备上点击span标签不能触发jquery的.click()事件?

青衿
  • 342
<span class="readTastingRule">查看试吃规则</span>


<div class="tastingRule">各种规则</div>



----------




<script type="text/javascript">
    $(document).on('click', '.readTastingRule', function() {
        $('.tastingRule').fadeToggle();
    });
</script>


上面写法在安卓设备点击正常,但是在IOS设备点击无效。
然后把span改成a标签之后,安卓和IOS都可以点击了。

<a href="javascript:void(0);" class="readTastingRule">查看试吃规则</a>

请问这是为什么呢?本人是前端新手,求大神解答。

回复
阅读 8.7k
3 个回答

当使用事件委托给一个元素添加 click 事件时,如果事件是委托到 document 或 body 上,并且委托的元素是默认不可点击的(如 div, span 等),此时 click 事件会失效。如果是可点击的(比如 button、a 标签),此时 click 事件还是有效的,这点要特别注意。
参考链接: http://www.cnblogs.com/zichi/p/5521391.html

js代码第二行的classname写错了!当然,这应该不是重点,现在问题解决了吗?

清风闲来
  • 1
新手上路,请多包涵

给需要点击的元素 添加 cursor: pointer; 样式就可以点击了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
你知道吗?

宣传栏