Hallo bleicher,
Events wie onscroll, onresize oder onmousemove feuern während der Aktion sehr oft, eben Pixelgenau, wobei das die Browser unterschiedlich handhaben. Ich habe da mit onresize mal etwas experimentiert.
Du musst dir überlegen, ob wirklich bei jedem Scrollpixel reagiert werden muss. Abhilfe wäre, dir zu merken, wann die letzte Aktion war und erst nach z.B. 0.1 s die nächste Aktion zulassen. Alternativ könntest du auch auf den onscroll verzichten und per setinterval alle z.B. 0.1 s die Scrollposition abfragen.
Gruß, Jürgen