Zwei Klicks für mehr Datenschutz - performanceoptimiert
Immer mehr Webseitenbetreiber bauen Zwei-Klick-Lösungen in Ihre Webseiten ein, um dem Datenschutz zu genügen. Weit verbreitet und sicherlich nahezu perfekt ist die Heise-Lösung. Doch leider verursacht diese Zwei-Klick-Lösung 9 zusätzliche Requests und überträgt, in der komprimierten Form, 14,1kB zusätzliche Daten. Dies hat mich dazu animiert, eine performanceoptimierte „Light-Version“ basierend auf jQuery zu erstellen.
Notwendige Funktionalitäten für eine Zwei-Klick-Lösung
Folgende Funktionalitäten müssen implementiert werden:
- Dummy-Button für die Ausgangssituation (mehrere Button können als CSS-Sprite kombiniert oder in ein vorhandenes Sprite integriert werden).
- Bei Mouseover über einen Button muss ein Datenschutzhinweis erscheinen.
- Beim ersten Klick auf einen einzelnen Button muss dieses aktiviert werden.
- Diese Entscheidung muss man sich merken (z.B. in einem Cookie).
- Die Entscheidung muss wieder zurückgenommen werden können.
Viel mehr an Funktionalität ist nicht zu implementieren. Das bedeutet nur wenige zusätzliche Zeilen an Javascript. Dies entspricht einem zusätzlichen Übertragungsvolumen von 6,2kB (in komprimierter Form) bei max. zusätzlichen 3 Requests (sofern man die Codesequence, das Bild und die Styles nicht in bereits vorhandene Dateien ergänzen will).
Zwei-Klick-Lösungen zur Performancesteigerung
Ich sehe den Einsatz einer Zwei-Klick-Lösung auch als Möglichkeit zur Performancesteigerung. Sicherlich ist die eigentliche Aufgabe die Gewährleistung des Datenschutzes. Niemand kann genau sagen, welche Informationen im Hintergrund protokolliert werden und zu welchem Zwecke sie weiter verwendet werden. Aus Sicht der Performance sei aber auch die Frage erlaubt: Wieso sollen ständig Scripte im Hindergrund geladen werden, die relativ selten (also nur beim Klick) zur Anwendung kommen? Schließlich ist Performance ein Rankingfaktor.
Fazit
Insbesondere beim Einsatz auf mobilen Webseiten stehen Performance und die Optimierung des Übertragungsvolumens zentral im Mittelpunkt. Deshalb muss es nicht immer die all-inclusive Lösung sein, um diverse Funktionalitäten zu ergänzen. Manchmal reicht es auch aus, sich auf das Wesentliche zu konzentrieren und diese notwendigste Funktionalität mit wenigen Zeilen selbst zu programmieren.
Hier nochmal der Vergleich: