Search code examples
jqueryeventslive

jquery live event for added dom elements


I want to add a class to any DOM element that is on the page now or in the future that has a specified class and meets some criteria

so for some pseudo code

$('.location').live('load',function(){
    if($(this).find('input:first').val().substr(0,1) == "!"){ $(this).addClass('hidden')}
});

of course this does nothing

EDIT NOTE

this does not work either

$('.location').live('load',function(){
    alert('adding location');
});

Solution

  • jQuery's live() feature is just subset of the livequery plugin, which is much richer. If you use livequery you could do something like..

    $('.location').livequery(function() {
       // perform selector on $(this) to apply class   
    });
    

    That will cover existing elements plus any future elements added to the DOM.