molily: User-JS Erweiterung

Beitrag lesen

Hallo,

Stimmt übrigens gar nicht, was ich großmaulig erzählt habe: document und dessen Methoden sind auch verfügbar, wenn die Seite noch nicht geladen ist. Ich hatte es mit document.body verwechselt, das ist null, bevor die Seite geladen ist. Also hast du Recht: document.getElementsByTagName ist ausführbar und findet auch ein title-Element, wenn das script-Element mit diesem Code nach dem title-Element notiert wurde (der Dokumentkörper sowie der gesamte Kopf müssen nicht vollständig geladen sein). Wenn das title-Element noch nicht eingelesen ist oder auch nach dem Laden des gesamten Dokuments keines vorhanden ist, gibt getElementsByTagName fröhlich eine NodeList mit 0 Elementen zurückgeben. Das heißt, if (titles.length > 0) ... wäre angebracht.

Was aber passiert in dem Fall, daß das Dokument geladen wird, aber kein Element mit dem gewünschten Tagname (hier "title") existiert?

Zu getElementsByTagName siehe oben.
document.title ist in einem solchen Fall ein Leerstring. Man könnte also ruhig
document.title = document.title.replace(/^SELFHTML Forum: \((.+)\)(.+)/, "$2 ($1) - SELFHTML Forum");
notieren - der Titel bliebe so, wie er ist, nämlich leer. Abfragen sind jedenfalls nicht nötig.

Mathias