8
votes

La fonction de redimensionnement de JQuery ne fonctionne pas sur la charge de la page

Comment puis-je obtenir cette fonction pour non seulement exécuter sur la fenêtre Redimensionner, mais également sur la charge de la page initiale?

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


0 commentaires

5 Réponses :


1
votes

Ce comportement est par conception.

Vous devez mettre votre code dans une fonction nommée, puis appelez la fonction. p>

Par exemple: P>

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

$(window).bindAndExec('resize', function() { ... });


0 commentaires

18
votes

vous voudrez utiliser: xxx pré>

pour faire quelque chose se produire surcharger. Si vous voulez que quelque chose fonctionne surcharger et omniquer, vous devez faire: P>

onResize = function() { /* your code */ }

$(document).ready(onResize);

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


0 commentaires

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

0 commentaires

0
votes

Une autre approche, vous pouvez simplement configurer un gestionnaire et spoof un événement de redimensionnement vous-même:

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

// Trigger/spoof a 'resize' event manually
$(window).trigger('resize');


0 commentaires

8
votes

Je pense que la meilleure solution est simplement de le lier à l'événement de charge et de redimensionnement:

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


2 commentaires

C'est la réponse la plus simple de tous


Cela le rend simple et propre.