iPad - touchStart() 事件被 div 文本阻止
Posted
技术标签:
【中文标题】iPad - touchStart() 事件被 div 文本阻止【英文标题】:iPad - touchStart() event blocked by div text 【发布时间】:2011-07-09 22:35:13 【问题描述】:我有一个触发 touchStart
事件的 div:
<div class="button" ontouchstart="touchStart(event)"> button</div>
当我的手指落在div内的文本按钮上时,事件不会被触发,div事件表面上的其他任何地方都会被触发,我怎样才能让它在我触摸文本时也触发?
【问题讨论】:
【参考方案1】:如果您知道 div 的大小,那么您可以使用 ontouchstart 事件在文本上方添加一个透明 div。
<div class="buttoncontainer">
<div class="button"> button</div>
<div ontouchstart="touchStart(event)" class="somethingrelative"></div>
</div>
buttoncontainer 和相关的东西有助于定位。
【讨论】:
【参考方案2】:您还可以将文本放在另一个元素中,例如跨度,并使其对事件无反应:
.button span
pointer-events: none;
【讨论】:
以上是关于iPad - touchStart() 事件被 div 文本阻止的主要内容,如果未能解决你的问题,请参考以下文章
iPad 上的 HTML5 视频元素不会触发 onclick 或 touchstart 事件?
触摸事件仅在iPad iOS 11.4上的Mobile Safari中滚动时触发“一次”