Je souhaite implémenter le défilement infini (avec un chargeur AJAX) dans un corps de tableau HTML.Position de défilement dans un corps de tableau
Mon HTML ressemble à ceci:
<table>
<thead>
<tr><th>Column</th></tr>
</thead>
<tbody>
<tr><td>Row 1</td></tr>
<tr><td>Row 2</td></tr>
</tbody>
</table>
Je reçois une barre de défilement sur la <tbody>
comme ceci:
tbody {
height:10em; /* Otherwise the tbody expands to fit all rows */
overflow:auto;
}
Pour pouvoir rien faire lorsque l'utilisateur fait défiler vers le bas, Je dois être en mesure d'obtenir la position de défilement du <tbody>
. Dans toutes les implémentations de défilement infini (jQuery) que j'ai vues (such as this one), elles soustraient la hauteur du contenu de la hauteur du conteneur et la comparent à la valeur .scrollTop().
Malheureusement, cela peut ne pas fonctionner avec <tbody>
, qui est à la fois le viewport et le conteneur pour le contenu défilant. $("tbody").height()
renvoie la taille visible (c'est-à-dire: "rétrécie"), mais je ne sais pas comment je peux obtenir la taille complète (visible + cachée) du corps de la table. (FWIW, $("tbody").scrollTop()
renvoie un "grand" nombre quand défilé vers le bas, exactement comme je l'attendrais).
Y a-t-il un moyen d'accomplir cela?
* grillons *. Les vues continuent à monter mais il n'y a pas d'activité. Je devine que ce n'est tout simplement pas possible compte tenu des navigateurs actuels. –