2010-10-04 4 views
0

Je souhaite déclencher l'événement onresize à partir de mon code C#. Je pense que cela peut être fait avectrigger onresize de manière compatible avec tous les navigateurs

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

J'ai essayé element.onresize(), mais il ne semble pas travailler dans Firefox. Quelle est la manière correcte de déclencher un événement onresize similaire au jQuery suivant?

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

L'utilisation de jQuery n'est pas une option.

Répondre

6

Cela devrait faire l'affaire, DOM Level 2, aucune idée si cela fonctionne dans IE6 , le mode quirks n'a toujours pas d'information sur ce sujet:

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'); 
} 

Testé en FF, Chrome et Opera.

+0

http://jsfiddle.net/EhLgB/2/ Ne fonctionne pas dans IE8 cela semble être une chose IE8 – Raynos

+0

Mis à jour avec du code spécifique IE. –

+0

IE travaux de piratage spécifiques! – Raynos

-1

utilisent ce $(window).resize(); (testé en FF, chrome, IE8)

// ancienne réponse, échoue dans FF document.body.onresize()

+0

N'existe pas dans Firefox. Lance un typeerror – Raynos

+0

Utiliser jQuery n'est pas une option pour moi. Cela doit fonctionner de manière générique sur tout le websit sans compter sur jQuery inclus. – Raynos

Questions connexes