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

<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>

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

阅读 7.7k
评论 更新于 2015-07-31
    3 个回答

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

    评论 赞赏 2016-08-17

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

      评论 赞赏 2015-07-31
        清风闲来
        • 1
        • 新人请关照

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

        评论 赞赏 2018-11-03
          撰写回答

          登录后参与交流、获取后续更新提醒