ความแตกต่างของ .bind(), .live(), และ .delegate() : Jquery
 

Blog :: Jquery :: ความแตกต่างของ .bind(), .live(), และ .delegate()

.bind(), .live(), และ .delegate() คือฟังก์ชั่นในการ เพิ่ม event ของ element หรือ selector ได้ (เท่าที่ผมเข้าใจนะ)
$('a').bind(
   'click',
   function(e){
   alert('This is method bind.');
})
จาก code ด้านบนนี้ .bind นั้นจะสามารถใส่ event ให้กับ Element ที่มีอยู่ในขณะนั้นเท่านั้น ไม่สามารถกำหนด event ให้กับ element ที่เพิ่มเข้ามาทีหลังไม่ได้
$('a').live('click', function() { alert('This is live') });
// or
$(document).delegate('a', 'click', function() { alert('This is Delegate); });
Code ด้านบนนี้สามารถกำหนด event ให้กับ Element A ได้ ถึงแม้ขณะนั้น ยังไม่มี Element A ใน document root ก็ตาม เช่น เมื่อมีการโหลด HTML เข้ามาผ่านทาง AJAX โดยที่มี Element A ติดเข้ามาด้วย Element A ที่เข้ามานั้นก็จะถูกจับ event click ใส่เข้าไปทันที

ที่มา : http://www.jquery.in.th

0 Comment

  • Have no comment.

Comment Blog

 
 
 
Share This Topic Login with Facebook