W Chrome, jeśli mam onscroll
Handler:Czy gwarantuje się, że wydarzenie "przewijania" zostanie uruchomione podczas przewijania programowego?
document.body.onscroll = function() {console.log('foo')}
... i przewijać dokument programowo:
document.body.scrollTop = 7
... wtedy onscroll
Wózek pożary.
Czy mogę polegać na tym zachowaniu w różnych przeglądarkach, czy niektóre z nich podpalą jedynie funkcję przewijania spowodowaną działaniem użytkownika? Czy jest to nigdzie widoczne?
Czy odnosisz się ściśle do ustawienia 'scrollTop'? Może to (miejmy nadzieję) być pomocne ... https://drafts.csswg.org/cssom-view/#dom-element-scrolltop – Dom
@Dom Niekoniecznie - wyobrażam sobie, że 'scrollLeft' ma takie samo działanie. Czemu? Jakie jest znaczenie linku do specyfikacji? –
Mój błąd, podałem link do 'scrollTop' zamiast linku' onscroll'. MDN udostępnia ich [tabelę zgodności przeglądarki] (https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onscroll#Browser_Compatibility), ale to pokazuje tylko obsługę krawędzi/chrome, inne są wciąż nieokreślone . Natrafiłem na [W3C's UI Events Spec] (https://w3c.github.io/uievents/#event-type-scroll), ale jego status jest przestarzały. Będę publikować wszelkie odpowiednie specyfikacje, jeśli natknę się na jeden. – Dom