JavaScript
Bei JavaScript handelt es sich um eine Skriptsprache, die auf der Seite des Clients arbeitet. Mit Hilfe von JavaScript lässt sich die Funktionalität von Websites erhöhen, indem Inhalte verändert oder generiert werden. JavaScript wird eingesetzt, um CSS und HTML zu ergänzen.
Einbindung in HTML Code
Der JavaScript Code kann in HTML-Seiten eingebunden werden, damit diese an Funktionalität gewinnen. Hierfür gibt es mehrere Möglichkeiten: er kann zwischen den Tags stehen ("Inline-Variante"), er kann in einer externen Datei untergebracht sein, er kann ein Parameter von HTML-Tags sein und er kann in Form eines HTML-Links eingebaut werden. Bei der Einbindung in den HTML Code ist darauf zu achten, dass das Script keine Fehler aufweist. Somit kann das Entstehen eines Bugs vermieden werden, welches sich negativ auf die Suchmaschinenoptimierung auswirken könnte.
DOM
Eine Skriptsprache wie JavaScript sollte DOM umsetzen. Das steht für “Document Object Model” und ist eine Empfehlung des W3C. Es handelt sich um ein allgemeines Modell für Objekte eines Dokuments.
Mögliche Anwendungen
JavaScript bietet viele verschiedene Anwendungsmöglichkeiten. Es können Seitenbesuche gezählt, Monatskalender eingeblendet oder Formulareingaben überprüft werden. Ein häufig genutztes Beispiel ist auch der Taschenrechner. In Webshops wird der Warenkorb häufig mit JavaScript umgesetzt.
Als Erweiterung von JavaScript kann CommonJS dienen. Diese macht unter anderem Programmierschnittstellen möglich, welche die Implementierung in Anwendungen wie Datenbanken, Webservices und Desktop-Anwendungen geeignet sind.
Folgen von Deaktivierung
Ein Browser bietet dem Nutzer die Möglichkeit, JavaScript mittels eines NoScript AddOns zu deaktivieren. Der Besucher einer Seite kann dann JavaScript-Anwendungen nicht mehr nutzen, schützt sich aber zum Beispiel vor störender Werbung oder Cyberangriffen. Wenn zu viele Elemente auf einer Seite JavaScript verwenden, sinkt die Usability, was sich negativ auf die User Experience auswirkt. Außerdem wird die Barrierefreiheit eingeschränkt. Grundsätzlich sollte jede Website auch bei deaktiviertem JavaScript noch navigations- bzw. funktionsfähig sein.
Sicherheit durch das Sandbox-Prinzip
Das Sandbox-Prinzip ist entwickelt worden, um den Nutzer vor Missbrauch durch JavaScript-Anwendungen zu schützen. Die Sandbox ist dabei eine Art Käfig, die die Sprache in ihrer Reichweite einschränkt. Eine Anwendung kann zum Beispiel nicht auf lokale Dateien zugreifen. Somit können Unbefugte weder Dateien auslesen, noch können sie hinein schreiben.
Bezug zur Suchmaschinenoptimierung
Suchmaschinen wie Google können mittlerweile auch Anwendungen in JavaScript crawlen, rendern und indexieren.
JavaScript-SEO gilt als eigener Teilbereich der Suchmaschinenoptimierung. Dabei wird versucht, den JavaScript-Code so zu gestalten, dass die Ladezeiten kurzbleiben und die über JS bereitgestellten Inhalte von Suchmaschinen gecrawlt, gerendert und in den Suchindex aufgenommen werden können.
Dateigröße und Performance
Besitzt eine Webseite ausgiebige Interaktions-Elemente, die per JavaScript umgesetzt und am Ende des Quellcodes platziert wurden, erhöht dies die Dateigröße jeder einzelnen Unterseite. Dies wiederum erhöht den Crawlingaufwand für die Suchmaschinen. Die Ladezeit für Benutzer mit langsamem Internetanschluss (zum Beispiel auf Smartphones) wird dadurch für jede Unterseite erhöht.
Man sollte in diesem Fall den Code in eine externe Javascript Datei ausgliedern und diese am Ende des Quellcodes integrieren. Die externe Datei sollte außerdem im Browser des Benutzers gecached werden, damit sie nur bei dem ersten Seitenaufruf geladen wird. Hierdurch wird ab dem zweiten Seitenaufruf ein Performance-Gewinn erzielt und auch die Suchmaschinen haben eine leichtere Aufgabe, da der Quellcode der Unterseiten "schlanker" ist. Die Crawler-Ressourcen kommen somit mehr Inhalten der Webseite zugute und fördern indirekt ein besseres Ranking.
Ladezeit und Conversion Optimierung
Einige Webmaster tendieren dazu, JavaScript verschiedener Unterseiten in einzelne externe Dateien auszulagern. Dies kann dazu führen, dass sehr viele externe JavaScript-Dateien beim Seitenaufruf angefordert werden. Hierdurch kann eine Verschlechterung der Renderzeit entstehen, da die Browser der Benutzer eine Begrenzung von maximalen parallelen Downloads von diesen externen Dateien (dazu zählen Bilder und CSS-Dateien) vorgeben. Bei zu vielen Dateien und einer langsamen Internetverbindung kann es vorkommen, dass die Seite länger zum Laden braucht, was für den Besucher eine schlechte "User Experience" darstellt und somit negative Auswirkungen auf die Conversion-Rate haben kann.
Im Idealfall sollten alle JavaScript-Dateien in eine einzige Datei zusammengeführt werden, die dann vom Benutzer nur ein einziges Mal geladen wird (Caching) und somit einen doppelten Performance-Gewinn bringen kann.
Renderzeit und Conversion Optimierung
Ein weiterer Trick zur Verbesserung der Webseite-Performance und Conversion ist, die externe(n) JavaScript-Datei(en) ganz am Ende des Quellcodes zu platzieren. Der Hintergrund ist der, dass teilweise die Browser das Rendering der Webseite an der Stelle stoppen, wo eine externe Datei verlinkt wurde und diese zunächst geladen wird. Liegt die externe JavaScript-Datei auf einem externen Server, der nur langsam antwortet, sieht der Benutzer zunächst nur eine leere Seite.
Erst wenn alle Scripts und CSS-Dateien geladen sind, wird das Rendering beendet. Platziert man die Referenzen zu der externen Datei hingegen am Ende des Quellcodes, wird dem Benutzer der Inhalt der HTML-Datei angezeigt und der Inhalt wie beispielsweise Texte sind vorab sichtbar. Der Vorteil dabei ist, dass der Nutzer im Falle des langsamen externen Servers nur warten muss, um Zugriff auf die Interaktions-Möglichkeiten des JavaScripts zu bekommen.
Weblinks
- https://developers.google.com/search/docs/advanced/javascript/javascript-seo-basics?hl=de Grundlagen von JavaScript-SEO
- https://de.selfhtml.org/javascript/intro.htm
- https://de.selfhtml.org/javascript/beispiele/index.htm