2

这是我的代码:

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

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

这在 PC 浏览器中完美运行,但在 iPad 中无法运行。有什么解决办法吗?

提前谢谢。

4

4 回答 4

3

这可能是因为您试图对不可点击的 html 元素上的事件做出反应。 本教程将解释如何

使元素可点击

由于 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>
于 2013-09-28T02:12:14.917 回答
1

我使用了“ touchstart ”事件而不是“ click ”事件。它非常适合我。这是示例代码:

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

// YOUR CODE ...
});
于 2014-06-17T14:57:30.443 回答
0

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

$('.flex-direction-nav .flex-next').off('click').on('click');
于 2013-03-03T19:07:37.730 回答
0

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

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

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

您有以下事件

  1. 触摸启动
  2. 触摸移动
  3. 触摸端
  4. 触摸取消

如何在 iPad 版 Safari 中使用 jQuery 识别触摸事件?可能吗?

于 2013-02-25T15:32:53.730 回答