2011-07-26 137 views
3

我有一個簡單的點擊事件附加到我的網絡應用程序的錨定數量。iPhone jQuery點擊事件

$('a.heading').live("click", function(e) { 
    e.preventDefault(); 
    //do my stuff 
}); 

這不是火箭科學。但是,在我的iPhone上,點擊不會註冊。它會出現它使用iPhone的觸摸處理程序(iPad,Android等都很好)。

我見過幾個教程,但似乎無法得到我的頭。是否沒有我可以使用的那種jQuery,通常很擅長?

+0

iPhone使用的觸摸不要點擊:(http://stackoverflow.com/questions/3705937/document-click-not-working-correctly-on-iphone-jquery – benhowdle89

+0

類似的問題:http://stackoverflow.com/questions/671498/jquery-live-removing-iphone-touch-event-attributes – diEcho

回答

5

這奏效了:

var userAgent = navigator.userAgent.toLowerCase(); 
var isiPhone = (userAgent.indexOf('iphone') != -1 || userAgent.indexOf('ipod') != -1) ? true : false; 
clickEvent = isiPhone ? 'tap' : 'click'; 
+2

看起來很詭異,看起來像你正瞄準一個移動的目標 – 3Dom

+0

還有其他的移動設備除了iPhone之外,OP只是陳述他的特殊情況。 – Bangkokian