1.jQuery点击事件,在Android手机上点击事件是可以的,但是iOS手机没反应。
js 生成的DOM,不是HTML写的
用 $('.btn').on("click",function(){}); 这样点击事件可能会不生效。
需要这样事件委托,$('XXX').on('click','.btn',function(){}); ('XXX' 是HTML上的btn的一个父级dom) ,才会生效。
但是当$(document).on('click','.btn',function(){}); 或者 $( body).on('click','.btn',function(){}); 会失效
问题描述:
当使用委托给一个元素添加click事件时,如果事件是委托到 document或 body上,并且委托的元素是默认不可点击的(如 div, span等),此时 click事件会失效。
解决方法
1、将目标元素换成a或者button等可点击的元素;
2、将 click 事件委托到非 document 或 body 的父级元素上;
3、给目标元素加一条样式规则 cursor: pointer(记住加 *{ -webkit-tap-highlight-color: transparent;} )。
网友评论