Bonjour
Après quelques heures de test, je pense avoir compris pourquoi le scrollTop ne fonctionne pas simplement:
dans tous les essais effectués au cours de cette discussion, il s'agissait de générer une <table> dans une <div>J'avais perdu de vue que que fait mon mon programme c'est de générer le contenu de la <div> "container", qui est plus qu'une table:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <div class="container">
<nav class="listTitle">
<ul>
<li>Titre de la colonne 1</li>
<li>Titre de la colonne 2<li>
...............
</ul>
</nav>
<div class="itemList">
<table>
<tr>........</tr>
.....................
</table>
</div>
</div> |
Pourquoi des "classes" et pas des "id"?
Parce qu'il peut y avoir plusieurs structures de ce genre dans la page, je gère donc les éléments par des querySelector('.className') plutôt que par des document.getElementById('id').
Pourquoi un "menu" comme titre de la table?
Parce que si je mets un <th> dans la <table>, le titre sera scrollé avec la table.
Le conteneur de la <table> n'est donc pas <div class="container">, mais <div class="itemList">, laquelle est générée avec le reste de la structure, et ne peut donc pas être l'objet d'une surveillance, puisqu'elle n'existe pas au moment du lancement, et c'est sur <div class="itemList"> qu'il faut appliquer scrollTop.
Ces essais me confirment mon impression initiale: il est assez délicat de faire une action sur un élément qui a été créé dans l'élément qu'on surveille.
La suite quand ça marchera...
Partager