2011年4月26日火曜日

JQueryのliveイベントがiPhoneのSafariで登録できない

JQueryのliveで登録したイベントがiPhoneのSafariでは動作しなくて暫くのハマり。

$('#identifier').live("click", function);

こんな感じの登録のやつです。
もち、PC上のブラウザでは動く。(多分Androidのブラウザも動いてた気がする)

なぜかiScrollに、対象のHTML要素を含んだものを入れるとイベント登録ができたりして、よけいに混乱しておりました。(理由不明)

JQueryの該当チケットは多分コレ。
Ticket #5677
LIVE CLICK EVENTS DON'T REGISTER ON MOBILESAFARI (IPHONE)
ここのコメントにありますが、回避方法は
onclick="" 属性を対象HTML要素に追加
です。

これで無事に動くようになりました。それはそれで びっくりですけども。
• • •