hallo
Da hilft nicht mal use strict.
In dem Fall hilft eine Zeile an den Anfang des Javascript-Teils einzufügen, die ich vergessen habe.
const ff = document.querySelector('#ff');
Zumindest solange das zweite
id="ff"
erst nachfolgend kommt. Ohne diese Zeile hat das nur geklappt, weil Browser selbständig eine Variable für die id angelegt haben. Die zweite id-Zuweisung hat die erste überschrieben. document.querySelector() hingegen sucht im DOM und endet an der ersten Fundstelle.Dass man clientseitig manipulieren kann, ist halt so in den Browsern. Damit muss man leben. Wenn die Manipulation hingegen unbeabsichtigt durch Dritte - beispielsweise durch XSS - durchgeführt werden konnte, dann hat man irgendwo einen Programierfehler, den man beseitigen muss.
Es dringt nur langsam in mein Bewusstsein, wie problematisch ids eigentlich sein können. Dass man da unbewusst überall Objektreferenzen im window scope erzeugt, ist eigentlich nicht wünschenswert, und verstärkt nur mein aus der CSS Praxis stammende Erfahrung, dass IDs möglichst zu vermeiden sind.
Ein 'use strict id' wäre wünschenswert, wonach ids nur über Attribut-Methoden oder via Objekt-Eigenschaften zugänglich sind.
Neu im Forum! Signaturen kann man ausblenden!