美文网首页
IOS下click事件委托失效问题

IOS下click事件委托失效问题

作者: rain129 | 来源:发表于2018-05-18 14:14 被阅读71次

直接上解决方案啦!

1.将 click 事件直接绑定到目标元素(即 .target ) 上
2.将目标元素换成 <a> 或者 <button> 等可点击的元素
3.给目标元素添加一个空的 onclick=""(<div class="target" onclick="">点击我!</div>)
4.把 click 改成 touchend 或 touchstart(注意加上preventDefault)
5.将 click 元素委托到非 document 或 body 的父级元素上
6.给目标元素加一条样式规则 cursor: pointer; (cursor: pointer; -webkit-tap-highlight-color: transparent;)(推荐)

以上是我网上找的答案,并没有一一验证,我用了第6种放法解决的问题,个人觉得第6种方法也是最为简单的解决方法

原因:apple出于用户体验,当用户点击不可点击的元素时候,是不会触发事件的。

相关文章

  • IOS下click事件委托失效问题

    直接上解决方案啦! 1.将 click 事件直接绑定到目标元素(即 .target ) 上 2.将目标元素换成 <...

  • ios点击失效

    h5在ios中点击失效 问题1:直接给元素绑定 click 事件失效 解决:可以改成绑定 touchend 事件 ...

  • IOS下事件委托失效的问题

    一、一些模板渲染等情况下,需要用到事件委托,比如给动态创建的DOM绑定click事件,这里就需要事件委托 (这里就...

  • ios click事件失效

    默认不可点击的元素,事件委托到document body 上,在ios safari 上事件不生效 解决方案:(...

  • HTML中 Safari 中点击事件失效的解决办法

    问题描述 当使用委托给一个元素添加click事件时,如果事件是委托到 document 或 body 上,并且委托...

  • iOS下的点击事件失效解决方法

    问题 当委托给一个元素添加click事件时,如果事件是委托到 document 或 body 上,并且委托的元素是...

  • 移动设备上的点击处理

    在 iOS 上(Andriod没亲自试过,估计同样),在使用事件委托的方式绑定 click 事件会无法生效。 比如...

  • 解决IOS下事件委托失效的方法

    出现的BUG 当使用事件委托给【目标元素】添加 click 事件时,如果【代理元素】是 document或body...

  • Jquery在ios上事件委托失效问题

    PC、Android都没问题,IOS无法冒泡到,原因是事件委托在了body上,改为body内的元素即可;另外,加c...

  • 2020-11-24

    事件委托 事件委托:通俗地来讲,就是把一个元素响应事件(click、keydown......)的函数委托到另一个...

网友评论

      本文标题:IOS下click事件委托失效问题

      本文链接:https://www.haomeiwen.com/subject/gndgdftx.html