2014-07-08 86 views
0

我試圖重現與jQuery的常見問題點擊不工作在iPad上。它一直適用於我。繼承人的jsfiddle:http://jsfiddle.net/EbE2M/11/ 至於這麼問提供一些代碼,這裏是從上面的小提琴:ipad點擊在Safari上的ipad上工作

$('.test').on('click', function(e){ 
    //some stuff to test here 
}); 

我失去了什麼或者它的只有一些iPad和行不通的其他工作嗎?什麼版本的safari和ipad我需要重現這個問題?

更新: 要找到點擊不在iPad上的例子,只是谷歌的「iPad點擊事件不工作」。 這裏是twoexamples等等。 爲什麼我問這是否適合我?因爲事情可能不適合我的客戶,「在我的機器上工作」並不可靠。我想得到像iPad或Safari瀏覽器版本的點擊不能正常工作的東西。以jsfiddle爲例。以便我可以從朋友/商店購買這款iPad並進行檢查。如果它能夠重現這種問題,我就可以購買它並在開發過程中用它進行測試。

+0

「它一直適用於我」 - 如果它正在工作,那麼問題是什麼。 –

+0

因爲它不適用於其他人。 Google針對「ipad點擊事件無法正常工作」。而且「在我的機器上工作」對我來說還不夠好。 –

+0

想downvoters解釋他們downvotes,當然:-)。看起來大多數人閱讀:「爲我工作」,並沒有讀到最後問:如果它的工作是什麼問題?請仔細閱讀整個問題並解釋下來的結果。 –

回答

2

jQuery中分配的點擊處理程序必須具有一個onClick屬性的任何非錨定元件(可以像下面是空的):

onClick="" 

OR

元件的CSS都需要有下面的聲明:

cursor:pointer 

DEMODetails

+0

我也看到了這個。但問題在於,它對iPad和Android都適用。即使沒有這些解決方法。所以問題仍然存在,需要修復哪些設備才能使其工作? –

1

單擊(與任何其他)事件必須直接綁定到iOS-s的元素才能正確註冊。這意味着委託事件處理程序將而不是在一些iOS設備上工作。

在我看來,這就是你要找的。

你不能保證,那

$(document).on("click", "someSelector", function(e) { doSomething(); }); 

將正常工作,但你可以使用(例如)您的片段:

$('.test').on('click', function(e){ doSomething(); }); 

,因爲這樣一來,它是直接註冊的元素本身。

+0

這裏有幾個問題,點擊選擇器,而不是文件,不能在iPad上工作:http://stackoverflow.com/questions/7892863 http://stackoverflow.com/questions/17161514 將更新問題,它似乎並不清楚。 –