欢迎访问WDPHP素材源码!下午好!别打盹哦!
您好,游客 [ 马上登录 | 注册帐号 | QQ登录]
当前位置:首页 > 教程 > 前端开发 > 

jQuery的on绑定事件在mobile safari(iphone / ipad / ipod)上无法使用的解决方案
栏目分类:前端开发    发布日期:2017-08-27    浏览次数:2328次     收藏

用一个div当做了一个按钮来使用。

 

<div class="button">
    <div class=" next_button button_left btn_red" style="width: 345px;">
    下一步
    </div>
</div>

因为是动态添加的内容,所以想要使用click事件,需要给他用on绑定一下:

$(document).on("click",".next_button",function(){
    alert();
});

这个时候,使用苹果手机访问的时候,发现了一个坑爹的问题,如论如何点击“下一步”,都没有任何反应,可是在安卓和各种模拟器中一切正常。后来经过查找资料才知道,苹果有这么个设置: 
对于点击的对象,拥有cursor:pointer这个样式的设置,也就是说,鼠标放上去,能够出现“手”型的图标才被认作可以使用点击事件,于是果断增加了样式

<style>
    .next_button{
        cursor:pointer
    }
</style>


原因:

冒泡事件是标准存在的,jquery的on事件也是没有问题。
问题出在,你要给你的dom写一个css样式 cursor:pointer
因为safari认为这才是一个可点击区域,这样表达更加友好,才会让你可以click,你才可以点击,你才可以绑定。

又或则你是一个<a>标签,然后<a>标签里面只有是<img>标签,你的<a>标签用on绑定click事件也是可以的,其他的标签都被无视click了。

又或则你用tap事件,又或则你直接仿写click,摁下超过300毫秒再触发都是可以的。

希望我的答案可以帮助到其他开发web移动端的小伙伴
评论1
头像 游客
友情提示:评论成功赠送5积分(每日前3次),刷评论扣8积分!
  • 头像 沙发
    2018年01月19日
    白止
    哦哦 原来如此
Copyright © 2016-2020 wdphp.com 版权所有   本站由WDPHP网站管理系统强力驱动  陕ICP备16002142号
网站首页 | 交流社区 | 关于我们 | 仿站定制 | 积分获取 | 广告投放 | WPS/云主机 | 站点地图
源码 模板 特效 素材 资源 教程 站长