Je suis en train de défiler dans une ligne particulière d'une table; le div
avec l' table
à l'intérieur, les deux ont overflow:auto
. C'est mon code pour le défilement à un indice particulier de la table:
var table1 = document.getElementById("old_table");
table1.rows[3].scrollIntoView({
behavior: 'smooth',
block: 'center'
});
C'est mon html:
<div id="old_slab"><table id="old_table" border="2"></table></div>
Et mon css:
#old_slab{
position: absolute;
top:34em;
left:30em;
width:40em;
height: 15em;
overflow: auto;
}
#old_table{
height: 15em;
overflow: auto;
width: 40em;
}
Les lignes de mon tableau sont créées dynamiquement, par conséquent, ils ne sont pas codées en dur dans mon code html. Néanmoins, le tableau n'est pas vide. Pour une raison quelconque, le scrollIntoView()
ne fonctionne pas et je ne sais pas pourquoi. S'il vous plaît aider.
EDIT: Bizarrement, quand j'enlève le behaviour
et block
les arguments, puis il travaille:
table1.rows[3].scrollIntoView(true);