views:

209

answers:

2

I have some jQuery code that intercepts links clicked on a page:

$(document).ready(function()
{   
        $("a").click(function() {
            //do something here
        });
});

My problem is there are certain parts of the page that have not finished loading on document ready. They are populated via ajax calls. The links in these sections are not intercepted by my jQuery function above.

I need the function to be run on document ready initially but then I need the new links to also have the same logic applied to them.

Any help would be very much appreciated. This is an area that I am very unfamiliar with. I have written the jQuery stuff but the ajax code is an external component that I have no control over.

+8  A: 

Use live():

$("a").live("click", function() { 
        //do something here 
}); 
Andy E
w00w exactly same answer .. only you were 25 sec faster +1
c0mrade
@c0mrade: lol thanks, +1 for you too.
Andy E
Why is using live() preferble?
Ben Shelock
c0mrade
+4  A: 

use live()

$("a").live('click',function() {
            //do something here
        });
c0mrade