La fonction de redimensionnement jQuery ne fonctionne pas au chargement de la page

Comment faire pour que cette fonction soit exécutée non seulement lors du redimensionnement de la fenêtre, mais également lors du chargement initial de la page?

$(window).resize(function() { ... }); 

Vous voudrez utiliser:

 $(document).ready(function() { /* your code */ }); 

Pour que quelque chose se passe en charge. Si vous voulez que quelque chose travaille sur la charge et sur la taille, vous devriez faire:

 onResize = function() { /* your code */ } $(document).ready(onResize); $(window).bind('resize', onResize); 

Je pense que la meilleure solution consiste simplement à l’associer à l’événement de chargement et de redimensionnement:

 $(window).on('load resize', function () { // your code }); 

Ce comportement est voulu.

Vous devriez mettre votre code dans une fonction nommée, puis appeler la fonction.

Par exemple:

 function onResize() { ... } $(onResize); $(window).resize(onresize); 

Alternativement, vous pouvez créer un plugin pour automatiquement lier et exécuter un gestionnaire:

 $.fn.bindAndExec = function(eventNames, handler) { this.bind(eventNames, handler).each(handler); }; $(window).bindAndExec('resize', function() { ... }); 

Notez que cela ne fonctionnera pas correctement si le gestionnaire utilise l’object event et qu’il ne couvre pas toutes les surcharges de la méthode bind .

 $(document).ready(onResize); $(window).bind('resize', onResize); 

n’a pas travaillé avec moi.

Essayer

 $(window).load('resize', onResize); $(window).bind('resize', onResize); 

au lieu.

(Je sais que cette question est ancienne, mais Google m’a envoyé ici, alors …)

Une autre approche consiste à configurer simplement un gestionnaire et à imiter soi-même un événement de redimensionnement:

 // Bind resize event handler through some form or fashion $(window).resize(function(){ alert('Resized!'); }); // Trigger/spoof a 'resize' event manually $(window).sortinggger('resize');