En utilisant récemment angulairejs comme backend de gestion, je dois implémenter une exigence. Deux tables distinctes peuvent défiler horizontalement en même temps, de sorte que l'événement de défilement est lié aux deux tables. Une fois la page actualisée, elle peut être liée. normalement, mais si cela ne fonctionne pas après un changement de page ou une pagination. À l'heure actuelle, lorsque je vérifie l'heure de liaison sur les deux tables, il n'y a aucun événement que j'ai lié = =
Si j'actualise la page, tout va bien... S'il vous plaît, donnez-moi quelques conseils T T
angular.element('#channelThead').bind('scroll',function(){
setTimeout(function(){
$('#channelTbody').scrollLeft($('#channelThead').scrollLeft());
},100)
})
angular.element('#channelTbody').bind('scroll',function(){
setTimeout(function(){
$('#channelThead').scrollLeft($('#channelTbody').scrollLeft());
},100)
})
Parce que vous l'avez écrit de cette façon, l'événement est lié à l'élément DOM spécifique lorsque ces deux instructions sont exécutées. Lorsque vous changez ou faites une pagination, le DOM est reconstruit et l'événement disparaît à moins que vous n'exécutiez à nouveau ces deux instructions.
En fait, dans Angular, la meilleure façon d'implémenter cette exigence est d'écrire la liaison d'événement dans la directive et d'ajouter des instructions à ces deux balises.