Aloha ;)
Hallo RIDER :)
Ich denke, das Problem ist einfach, dass element.scrollTop
auf einer ganz anderen Baustelle arbeitet als die üblichen style.properties, sprich, dass das die Scrolling-Eigenschaft immer nur in Verbindung mit dem Browser 'entsteht'.
Wenn das Element auf display:none;
gesetzt ist, gibt es kein 'Scrolling' und dem zur Folge wird jeder Befehl, der während dessen ausgeführt werden soll, ignoriert.
Wenn man also ein Element mit overflow:scroll;
auf scrollTop=0;
zurücksetzen will, muss das passieren, solange es auf display:block;
gesetzt ist.
Wenn ich also mein Menü ausblende und es am Ende der Animation auf display:none;
gesetzt wird, ich das Menü aber in seinen Ursprungszustand zurücksetzen will, dann muss ich den Befehl element.scrollTop=0;
vor dem Ende der Animation ansetzen, oder aber das Element nach Beendigung der Animation mit setTimeout
kurz auf visibility:hidden;
setzen, und dann den Befehl scrollTop=0 geben, bevor das Element / Menü endgültig auf display:none; gesetzt wird.
Ist halt recht umständlich...
Anders kann ich's mir nicht erklären. ;)
Gruß,
Roadster.