How do I find which JavaScript is changing an element’s style?

If you’re sure it’s being set on the inline style and not as a consequence of a stylesheet rule, you can detect changes using the non-standard Mozilla watch() method:

document.body.style.watch('color', function(name, v0, v1) {
    alert(name+': '+v0+'->'+v1);
});
document.body.style.color="red";

You can put debugger; in the watcher function and look up the call stack in Firebug to see where the change was triggered.

Leave a Comment