jQuery .bind() Vs .live()
jQuery .bind() method will only apply to the items you currently have selected in your jQuery object and live() method will apply to all current matching elements, as well as any you might add in the future.jQuery .bind() method
jQuery .bind() method attached events to elements that exist or match the selector at the time the call is made. But the issue with bind() is that it doesn’t work for elements added dynamically that matches the same selector. So, the bind() method only attach events to the current elements not future element.jQuery .live() method
jQuery .live() method overcomes the disadvantage of bind(). It works for existing and future matching elements. Before jQuery 1.4 this was limited to the following events: click, dblclick mousedown, mouseup, mousemove, mouseover, mouseout, keydown, keypress, keyup. This method attaches the event handler to the root level document along with the associated selector and event information. By registering this information on the document it allows one event handler to be used for all events that have bubbled up to it.jQuery .bind() Vs. .live()
jQuery .bind() example
Consider there are several < img > elements.
$('img').bind('click', function(){...});
After that, add some extra images (using get(), or html(), anything), then you can see the new images don't have any binding!!
Of course, since the new images didn't exist when you did the $('img').bind('click', function(){...});, but it didn't bind the event handler to them.
jQuery .live() example
Consider there are several < img > elements.
$('img').live('click', function(){...});
Add some extra images (using get(), or html(), anything). then you can see the new images do have the binding!!
jQuery 1.7 deprecated live() method and 1.9 has removed it. If you want to achieve the same functionality with 1.9+ you need to use a new method on() which has slightly different syntax as it's invoked on document object and the selector is passed as a parameter.
$( '#element' ).on( 'click', handler );
The idea for adding .on() was to create a unified event API , rather than having multiple functions for binding event; .on() replaces .bind(), .live() and .delegate().
Related Topics
- jQuery Interview Questions (Part-2)
- jQuery Interview Questions (Part-3)
- Is jQuery a programming language?
- Why do we need to go for JQuery?
- How to check jQuery version?
- How to multiple version of jQuery?
- What is jQuery CDN?
- Advantages of minified version of JQuery
- How do I check if the DOM is ready?
- How to Use the jQuery load() Method
- Difference between document.ready() and body onload()?
- Is jQuery is a replacement of JavaScript?
- JQuery or JavaScript which is quicker in execution?
- What is the use of param() method?
- How to work with jQuery parent(), children() and siblings()?
- Difference between parent() and parents() in jQuery?
- What does jQuery data() function do?
- How do you check if an element exists or not in jQuery?
- How do I check if an HTML element is empty using jQuery?
- How to run an event handler only once in jQuery?
- How to disable/enable an element with jQuery
- Hide and show image on button click using jQuery
- Difference Between Prop and Attr in jQuery
- How do I check if an element is hidden in jQuery?
- What happen if you return false from a jQuery event handler?
- What is each() function in jQuery? How do you use it?
- Which one is more efficient, document.getElementbyId( "myId") or $("#myId)?
- What is the difference between $.map and $.grep in jQuery
- What is the use of serialize method in jQuery
- What is the use of clone method in jQuery?
- What is event.PreventDefault in jQuery?
- Difference between event.PreventDefault and event.stopPropagation?
- What are deferred and promise object in jQuery?
- What are source maps in jQuery?
- What does the jQuery migrate function do?
- How can you delay document.ready until a variable is set?
- How to disable cut,copy and paste in TextBox using jQuery?
- How to prevent Right Click option using jquery?
- How does the jQuery pushStack function work?
- Why use jQuery filter() Methods?
- Difference between find() and closest() in jquery?
- How To Use Ajax In Jquery?
- How to multiple AJAX requests be run simultaneously in jQuery?
- Can we call C# code behind using jQuery?
- How to include jQuery in ASP.Net project?
- Need to add jQuery file in both Master and Content page?
- Uncaught TypeError: $(…).modal is not a function jquery
- How to check whether a checkbox is checked in jQuery?
- Uncaught ReferenceError: $ is not defined
- How to Convert JSON Date to JavaScript/jQuery date