【问题标题】:jQuery 'click' event doesn't work on iOS Safari?jQuery 'click' 事件在 iOS Safari 上不起作用?
【发布时间】:2016-10-06 16:49:38
【问题描述】:

这是一个奇怪的问题。我有一个似乎不适用于 iOS 的委托“点击”事件。但是,如果我将事件更改为“单击 touchstart”,它就会起作用。见下文:

$('body').on 'click touchstart', '#cartut-proddetail', ->
  $(@).fadeOut -> $(@).remove()
  $('#cartut-overlay').fadeOut -> $(@).remove()

基本上,#cartut-proddetail 是模态框后面的叠加层。因此,当用户点击模式时,我想删除所有覆盖。但是,如果没有touchstart,什么都不会发生。这是为什么?其他 click 事件在 iOS 上运行得很好,而且我以前从未使用过 touchstart(这实际上是第一次)。为什么click 本身不起作用?

【问题讨论】:

  • 是的,touchstart 有效,那么您在寻找之后有什么问题?
  • @Bhojendra-C-LinkNepal - 这不是他的问题。

标签: jquery ios jquery-events


【解决方案1】:

很奇怪,它对我也有用,在 iPhone 5S 和 4S 上测试过。

我在 html 正文中添加了一条错误/成功消息,如果我委托对正文或文档的点击,关闭按钮将不起作用。

在找到您的解决方案之前,我尝试了点击、点击、触摸,但没有任何效果。我仍在努力找出它为什么有效。

感谢您的解决方案

【讨论】:

    最近更新 更多