Comment mettre en œuvre un " onVisible en Javascript?
Est-il une technique ou un ensemble de techniques qui peuvent être utilisées pour mettre en œuvre ce, en effet, serait un onVisible '"événement" en JavaScript?
Je voudrais que mon JavaScript pour détecter quand un élément dans une page web, comme un paragraphe de texte, ou une image, devient visible dans la fenêtre du navigateur comme un utilisateur fait défiler une page. Je voudrais également une correspondant '"événement", onNotVisible, qui se déclenche quand un élément qui a été une fois visible dans la fenêtre du navigateur ne peut plus être considérée.
Si elle ne peut pas être facilement mis en œuvre en JavaScript, il y a n'importe quel navigateur d'événements spécifiques qui peuvent fournir les mêmes fonctionnalités?
- peut-être cela peut vous aider stackoverflow.com/questions/399867/custom-events-in-jquery
- voir stackoverflow.com/questions/487073/...
Vous devez vous connecter pour publier un commentaire.
Je devais l'essayer moi-même, et c'est ce que je suis venu avec:
Testé dans:
irritant, n'utilisez pas les popups si
vous essayez ici!)
(Le code est également disponible sur PasteBin)
Le code ci-dessus n'est pas optimisé en quelque sorte, j'ai simplement commencé à écrire, et s'est terminé quand il a travaillé. De préférence, vous souhaiterez probablement utiliser une seule file d'attente, refactoriser le code et de le rendre plus générique. Fourni en l'état.
Vous devez définir un écouteur d'événement pour le document ou de la fenêtre de l'événement onscroll. Alors vous feriez mesure actuellement visible de la zone par l'ajout de la clientHeight à scrollTop, puis vous vérifiez si votre élément de choix est à l'intérieur de cette zone. Quelque chose comme ceci
Si c'est le cas, vous définissez certaines drapeau quelque part dans votre code.
Vous êtes probablement à des incompatibilités entre navigateurs, il y bien que. Donc mieux vaut utiliser une bibliothèque.
L'un des réponses dans le question lié ci-dessus par @edbond renvoie un pointeur sur le jQuery apparaissent plugin. Ce plugin vous permet de fixer
appear
etdisappear
rappels à un élément que l'on appelle l'élément défile dans et hors de la vue, qui ressemble exactement à ce que vous recherchez.