Question

Je suis en train d'exécuter une fonction de chargement de la page, mais sa ne fonctionne pas. Je l'ai ajouté dans tous les endroits que je peux penser et seulement chose qui fonctionne est:

$("html").mousemove(function(event) {
    $('#project_thumbs_container').masonry('reload');
});

J'ai essayé des retards mais je l'ai eu recours à la méthode hacky ci-dessus: (

Est-ce que quelqu'un a des suggestions quant à la raison pour laquelle ma fonction ne fonctionne pas?

Mise à jour:

J'utilise la maçonnerie pour jquery. Mon problème est quand je charge une page qui utilise maçonnerie avec ajax, il les montre dans une seule colonne. $('#project_thumbs_container').masonry('reload'); remet à zéro correctement, mais il ne fonctionne que selon la méthode de mousemove ci-dessus.

Était-ce utile?

La solution 2

A moins que quelqu'un a une meilleure réponse, je viens de mettre le code dans mon extrait de fadeIn(); après appel ajax est complet:

this.fadeIn('slow', function() {
  $('#project_thumbs_container').masonry('reload');
});

Semble au travail.

Autres conseils

Il semble que vous avez l'un des deux problèmes:

1) malformée HTML qui est à l'origine d'une erreur, ce qui ne permet pas le code correctement analyser lors de l'utilisation du document syntaxe onReady: $ (function () {...});

2) Maçonnerie est peut-être le chargement de manière asynchrone, ce qui signifie que le rappel « onReady » pourrait ne pas être celui que vous souhaitez utiliser. Votre appel Ajax ressemblerait plus à ceci:

$('body').load('index.html', function() {
  $('#project_thumbs_container').masonry();
});

Essayez quelque chose comme ça.

$(document).ready(function(){
    $('#project_thumbs_container').masonry('reload');
}); 

Vous pouvez mettre ce code n'importe où sur la page et cela devrait fonctionner, aussi longtemps que les dépendances ont déjà été chargées.

Il suffit de mettre votre fonction dans cette

$(document).ready(function() {
  // Handler for .ready() called.
  // your function 
});

lorsque votre page charge la fonction exécutera

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top