2012-08-30 21 views
-1

是什麼,這些事件處理jQuery的document.on事件

 $(document).on("click","selector",function(event){ 

     }); 

 $("selector").live("click",function(event){ 

     }); 
+1

[jQuery .live()和.on()之間的區別是什麼?)(http://stackoverflow.com/questions/8042576/whats-the-difference-between-jquery-live-and-on ) – undefined

+0

它們在結果上是完全相同的,除了'live'在較新的jQuery版本上被棄用 – fcalderan

+0

是否可以在兩種類型中使用多個選擇器 – Aravind

回答

1

在第一種情況下,事件附加在「文檔」DOM上,對嗎?

在第二種情況下,事件附加在「選擇器」DOM上,對嗎?

第一個被jQuery選中:只有少數元素捕獲解決方案中的事件1 /(文檔可以附加到每個事件),但在解決方案中,2 /頁面中的許多元素都在內存中,附加到事件。

例如:

$(".test").live("click",function(event){"do something"} 
$(".test1").live("click",function(event){"do something1"} 
$(".test2").live("click",function(event){"do something2"} 

3元素聽點擊事件,對吧?

現在,這些元素是隻有myDiv中鼓附着事件點擊一個div 「myDiv」

$("#myDiv").on("click",".test",function(event){"do something"} 
$("#myDiv").on("click",".test",function(event){"do something"} 
$("#myDiv").on("click",".test",function(event){"do something"} 

但不要在文檔標籤使用上,使用此功能在全球爲數不多的div!

0

所有.on()方法首先之間的差別,你應該用實際的事件監聽器。

第二個.live()曾經是#1但在最後的版本中被棄用,所以你不應該再使用它了。

工作方式相同,可以這樣調用。