2010-06-03 7 views
0

J'ai ce scénario: En utilisant une requête ajax je récupère des éléments de données et les place dans un élément ul en tant qu'élément li. J'utilise $("ulele").append(new_li_item). J'ai écrit mon propre parchemin personnalisé pour cet élément ul en utilisant les éléments suivants à chaque fois qu'un événement est détecté:jQuery: empêcher la liste de défiler?

$("ulele").animate({scrollTop: '+=' + 200}, 'slow'); 

Le problème est quand je fais feu cet événement et la liste défile en raison de la fonction animate ci-dessus, je veux le garder stable pendant au moins quelques secondes. Quand il défile vers le bas, les éléments sont toujours poussés de sorte que la liste continue à défiler, peu importe quoi. J'utilise de la façon suivante pour ajouter les éléments li (qui ont déjà un attribut display:none):

$("#liele").delay(6000 * i).show("slow") 

Est-il possible que je peux faire une pause que cela se passe sans arrêter vraiment l'activité de pousser les éléments dans la liste des ul?

Répondre

0

Peut-être essayer .delay()? .

http://api.jquery.com/delay/

Quelque chose comme ceci:

$ ("Ulele") animer ({scrollTop: '+ =' + 200}, 'slow') retard (1000);.

+0

Désolé. J'ai essayé mais ça ne marche pas. En fait, je ne suis même pas sûr de la signification de cela. Je voudrais pouvoir verrouiller la vue de la liste pendant quelques secondes, c'est ce que je voulais dire. – Legend

0

Essayez de placer l'animation dans une fonction et avant d'ajouter un élément à l'ulele, supprimez l'animation et ajoutez-la à nouveau après avoir obtenu les données dans un sens. C'est une façon de le faire, mais à première vue, cela semble très intensif.

Ce qui suit devrait fonctionner mieux - Lorsque vous créez la nouvelle li élément, démarrer avec display: none et après il est tiré par les cheveux à l'aide de l'appel AJAX, mettez à jour l'affichage attribut en ligne ou comment jamais vous en avez besoin. Cela devrait faire mieux que le précédent.

+0

Merci pour votre aide. Je viens de mettre à jour ma question avec quelques détails supplémentaires pour la rendre plus claire sur la façon dont je fais cela. – Legend

+0

Est-il possible de supprimer le numéro d'élément lorsque vous ajoutez de nouveaux éléments. S'il y avait une interface vidéo/implémentation, cela pourrait aider à mieux comprendre le problème. – Sairam

Questions connexes