Javascript code to detect any page changes? (maybe via AJAX)

PixelPerfect3 picture PixelPerfect3 · Dec 6, 2010 · Viewed 15.6k times · Source

Ok so I'm new to writing javascript, and here's what I'm doing/trying to do.

When a page loads (window.onload) my javascript code goes through all the forms in a page and attaches a certain "onchange" method to them. This works fine for most websites on the internet, except when a page dynamically updates to load more forms on the page. How do I detect such an event and re-run my function?

For example:

The Facebook Newsfeed has a bunch of forms associated with all the different statuses/links posted. My code goes through them and attaches the listener. But if go you all the way down the page automatically updates to reveal more statuses/links/etc. (or you click the "Older Posts" link) - but now my javascript code has not run globally again.

Anyway I can do that? Thanks.

EDIT: I am writing a browser extension.

Answer

bevacqua picture bevacqua · Dec 6, 2010

use .live() ?

$(document).ready(function()
{
    $(document).live("onchange",function()
    {
        // blah?
    });
});