【问题标题】:iPad - touchStart() event blocked by div textiPad - touchStart() 事件被 div 文本阻止
【发布时间】:2011-07-09 22:35:13
【问题描述】:

我有一个触发 touchStart 事件的 div:

<div class="button" ontouchstart="touchStart(event)"> button</div>

当我的手指落在div内的文本按钮上时,事件不会被触发,div事件表面上的其他任何地方都会被触发,我怎样才能让它在我触摸文本时也触发?

【问题讨论】:

    标签: javascript ios dom dom-events touch-event


    【解决方案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;
      }
      

      【讨论】:

        猜你喜欢
        • 2018-02-16
        • 2019-11-08
        • 2018-03-14
        • 1970-01-01
        • 2011-09-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多