Das Script sollte so laufen, schließlich hat es ja auch in der Demo funktioniert die ich dir gepostet hatte.
Es sollte also drei mögliche Ursachen geben:
- Es gibt einfach kein Element in deinem Markup mit der ID "div-test".
- Du hast einen anderen Fehler in deinem Script, der die Ausführung des ganzen Scripts verhindert. Einfach überprüfen, indem du die Javascript-Konsole deines Browsers öffnet. (Normalerweise in den Entwicklertools die du über F12 erreichen kannst)
- Das onload-Event wird nicht ausgeführt, weil es an anderer Stelle im Script überschrieben wurde. Um zu überprüfen ob das der Fall ist, kannst du mittels console.log("Test"); in der Funktion überprüfen, ob diese ausgeführt wird. (Die Ausgabe des Logs erfolgt in der o.g. Javascript-Konsole)Aus dem Grund sollte man Events immer möglichst über addEventListener binden! Außerdem eignet sich für dein Vorhaben das DOMContentLoaded-Event mehr, denn es wird aufgerufen wenn das Dokument fertig geladen und geparst ist und wartet nicht auf die Darstellung der Elemente. (Wie das onLoad-Event)https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListenerhttps://developer.mozilla.org/en-US/docs/Web/Events/DOMContentLoaded
document.addEventListener("DOMContentLoaded", function() { /* ... */ });
Falls o.g. nicht weiterhilft, dann bräuchte man mehr Einblicke auf das Script, das Markup, die Ausgabe der Konsole und Co.