点击事件在ipad中不起作用

时间:2013-02-25 15:30:40

标签: ipad click

这是我的代码:

     var tmp = plugin.main_video_src.split("_")[1]

     if(tmp == 2)
     {
        $('.flex-direction-nav .flex-next').click();
     }

这在PC浏览器中运行良好,但它不适用于iPad。任何解决方案?

提前谢谢。

4 个答案:

答案 0 :(得分:3)

可能是因为您正在尝试对不可点击的html元素上的事件做出反应。 This tutorial will explain how

  

使元素可点击

     

由于iOS上的Safari创建事件来模拟鼠标,因此某些元素在iOS上的行为可能不如预期。特别是,一些只使用mousemove处理程序的菜单,如清单6-1所示,需要更改,因为iOS不会将它们识别为可点击元素。

     

清单6-1使用鼠标悬停处理程序的菜单

<span onmouseover = "..."
  onmouseout  = "..."

WHERE TO BUY

</span>
  

要解决此问题,请添加一个虚拟的onclick处理程序onclick = "void(0)",以便iOS上的Safari将span元素识别为可单击元素,如清单6-2所示。

     

清单6-2添加onclick处理程序

<span onmouseover = "..."
  onmouseout  = "..."
  onclick = "void(0)">

WHERE TO BUY

</span>

答案 1 :(得分:1)

我使用了“ touchstart ”事件而不是“点击”事件。它对我来说很完美。 以下是示例代码:

$("<selector>").bind("touchstart", function() {

// YOUR CODE ...
});

答案 2 :(得分:0)

iPad上不存在OnClick事件。你需要触摸事件

$('.flex-direction-nav .flex-next').trigger('touchstart');

document.addEventListener('touchstart', function(e) {
    //Bind your event here
}, false);

您有以下活动

  
      
  1. touchstart
  2.   
  3. touchmove
  4.   
  5. touchend
  6.   
  7. touchcancel
  8.   

How to recognize touch events using jQuery in Safari for iPad? Is it possible?

答案 3 :(得分:0)

我有同样的问题。这对我有用。

$('.flex-direction-nav .flex-next').off('click').on('click');