ipad click 适用于 ipad on safari
Posted
技术标签:
【中文标题】ipad click 适用于 ipad on safari【英文标题】:ipad click works on ipad on safari 【发布时间】:2014-07-08 08:52:34 【问题描述】:我试图重现 jquery click 在 ipad 上不起作用的常见问题。它一直对我有用。这是jsfiddle:http://jsfiddle.net/EbE2M/11/ 所以要求提供一些代码,这里是来自上面的小提琴:
$('.test').on('click', function(e)
//some stuff to test here
);
我是否遗漏了任何内容,或者它仅适用于某些 ipad 而不适用于其他 ipad?重现问题需要什么版本的 safari 和 ipad?
更新: 要查找点击在 iPad 上不起作用的示例,只需在谷歌上搜索“iPad 点击事件不起作用”。 这里是twoexamples。 为什么我问这个是否对我有用?因为事情可能不适合我的客户,并且“在我的机器上工作”是不可靠的。我想获得点击无法正常工作的 iPad 或 safari 版本。最好使用 jsfiddle 示例。这样我就可以从朋友/商店得到这个 iPad 并检查它。如果它可以重现此类问题,我只需购买它并在开发过程中使用它进行测试。
【问题讨论】:
“它一直对我有用” - 如果它有效,那么问题是什么..? 因为它不适用于其他人。谷歌“ipad 点击事件不起作用”。而“在我的机器上工作”对我来说还不够好。 希望反对者解释他们的反对意见,当然:-)。似乎大多数人都读过:“为我工作”并且没有读到最后问:如果它有效,你的问题是什么?请阅读整个问题并解释反对意见。 如果它一直对你有效,那么很明显这是其他人代码的问题,而不是 iPad。如果您看到有人抱怨某些东西在 iPad 上不起作用,他们只是说它在任何 iPad 上都不起作用……?如果是这样,很明显问题出在他们的代码上,因为通常它可以在 iPad 上运行,就像您所经历的那样。如果没有,他们可能已经提到了 iPad 的版本。 “我需要什么版本的 safari 和 ipad 才能重现该问题?” - 什么问题..?在编辑之前,您的问题尚不清楚。我们怎么知道您在 google 中看到的问题的原因是什么? 不是每个人都会遇到这样的问题,这在很大程度上取决于代码、dom
的结构、它们如何绑定事件等。即使有人在一个版本的 iPad 中遇到特定问题,其他版本伙计们的问题将是另一个版本的 iPad,这完全取决于场景。您如何期望有人回答:“哦,无论您做什么,这个版本都会产生问题,这个和这个不会”?其他人显然会说“嘿,伙计,但我在那个版本中有问题!”。你可能想参考苹果论坛什么的。我的拙见。
【参考方案1】:
在 jQuery 中分配了点击处理程序的任何非锚元素都必须具有 onClick 属性(可以为空,如下所示):
onClick=""
或
元素css需要有如下声明:
cursor:pointer
DEMO, Details
【讨论】:
我也看到了这个。但问题是它对我来说适用于 iPad 和 android。即使没有这些变通方法。所以问题仍然存在,哪些设备需要此修复才能使其正常工作?【参考方案2】:点击(与任何其他)事件必须直接绑定到 ios-s 的元素才能正确注册。这意味着委派事件处理程序将不在某些 iOS 设备上工作。
在我看来,这就是你要找的。p>
你不能保证,那
$(document).on("click", "someSelector", function(e) doSomething(); );
会正常工作,但你可以,使用(例如)你的 sn-p:
$('.test').on('click', function(e) doSomething(); );
由于这种方式,它直接注册在元素本身上。
【讨论】:
这里有几个问题,点击选择器,而不是文档,在 ipad 上不起作用:***.com/questions/7892863***.com/questions/17161514 将更新问题,似乎不清楚。以上是关于ipad click 适用于 ipad on safari的主要内容,如果未能解决你的问题,请参考以下文章
适用于 iPad 的 UINavigationController [关闭]
JayData / Phonegap 适用于 iPad 模拟器但不适用于 iPad 设备