ios手机 按钮点击事件没反应(这个按钮是js生成的)
2017-08-29 09:11
2151 查看
昨天碰到这种问题,在Android手机上点击事件是可以的,但是iOS手机没反应。用的是jQuery,我立即就想到是点击事件格式写的有问题,因为 我之前就碰到过类似的问题,比如,你用js 生成的一个按钮 <div class="btn">按钮</div> (记住是 js 生成的,不是HTML写的),用 $('.btn').on("click",function(){}); 这样点击事件可能会不生效。需要这样写,$('XXX').on('click','.btn',function(){});
('XXX' 是HTML上的btn的一个父级dom) ,这样才会生效。
$('XXX').on('click','.btn',function(){}); ('XXX' 是HTML上的btn的一个父级dom) 但是这种写法在ios手机会出现点击事件不生效的情况,解决办法我搜了下,几种解决办法如下:
在pc以及安卓设备都是正常的,但是在ios上面就失效了。
问题描述:
当使用委托给一个元素添加click事件时,如果事件是委托到 document或 body上,并且委托的元素是默认不可点击的(如 div, span等),此时 click事件会失效。
解决方法
1、将 click 事件直接绑定到目标元素(即 .target)上;
2、将目标元素换成 a 或者button 等可点击的元素;
3、将 click 事件委托到非 document 或 body 的父级元素上;
4、给目标元素加一条样式规则 cursor: pointer。
原链接:http://www.jianshu.com/p/e69b38c7fa75
('XXX' 是HTML上的btn的一个父级dom) ,这样才会生效。
$('XXX').on('click','.btn',function(){}); ('XXX' 是HTML上的btn的一个父级dom) 但是这种写法在ios手机会出现点击事件不生效的情况,解决办法我搜了下,几种解决办法如下:
$(document).on('click', 'dl dt', function() { //something() });
在pc以及安卓设备都是正常的,但是在ios上面就失效了。
问题描述:
当使用委托给一个元素添加click事件时,如果事件是委托到 document或 body上,并且委托的元素是默认不可点击的(如 div, span等),此时 click事件会失效。
解决方法
1、将 click 事件直接绑定到目标元素(即 .target)上;
2、将目标元素换成 a 或者button 等可点击的元素;
3、将 click 事件委托到非 document 或 body 的父级元素上;
4、给目标元素加一条样式规则 cursor: pointer。
原链接:http://www.jianshu.com/p/e69b38c7fa75
相关文章推荐
- 解决js添加一个按钮,让这个按钮也获得初始的事件,绑定到新生成的DOM
- 前台按钮点击没有反应,onclick事件无法作用(JS事件失效)
- ios 关于 通过加载 xib 生成的view,调用 addsubviews,sub view的按钮 不相应点击事件的 问题
- iOS开发-截获html按钮点击事件,实现js调用native代码
- iOS 获取UIWebView上面的按钮点击事件
- iOS移动中按钮添加点击事件
- iOS 获取UIWebView上面的按钮点击事件
- JS生成DOM元素点击事件不生效和点击事件禁止冒泡处理方式
- js触发按钮点击事件
- ios 动态添加了按钮,绑定同一个点击事件,如何判断点击的是哪个?
- 详解iOS中Button按钮的状态和点击事件
- plupload自动生成input控件选择按钮,ios手机却无法选择
- IOS之UI--自定义按钮实现代理监听点击事件
- iOS 获取UIWebView上面的按钮点击事件
- iOS修改系统原声的返回按钮的点击事件
- 为js生成的class添加点击事件
- iOS中超出父视图的按钮点击事件响应处理
- ios tableView 自定义cell上的按钮点击事件不好用
- ios微信端 手机版网页 委托事件点击事件 click触发事件span不可以 a可以
- iOS 代码触发button点击事件 objective-c怎么代码触发按钮点击事件