Search code examples
javascriptasp.neteventsonresize

trigger onresize in cross browser compatible manner


I would like to trigger the onresize event from my C# code behind. I think this can be done with

Page.clientScript.RegisterScriptBlock(this.getType(), "id", "javascript code");

I have tried element.onresize() but it doesnt seem to work in firefox. What is the correct way to trigger an onresize event similar to the following jQuery?

$("body").trigger("resize");

Using jQuery itself isn't an option.


Solution

  • This should do the trick, DOM Level 2, no idea whether this works in IE6, quirks mode still has no information on this stuff:

    if (document.createEvent) {
        var e = document.createEvent('HTMLEvents');
        e.initEvent('resize', true, false);
        document.body.dispatchEvent(e);
    
    } else if (document.createEventObject) {
        document.body.fireEvent('onresize');
    }
    

    Tested in FF, Chrome and Opera.