Hallo,
tja, wie erkläre ich das jetzt. Du programmierst hier zwei Geräte gleichzeitig, und man kann dabei schnell verwirrt sein.
-
Deinen Server. Da läuft das PHP Script, und es erzeugt eine HTML Seite für den Browser. In dieser HTML Seite kann HTML, CSS und JavaScript stehen.
-
Den Browser. Da kommt deine Seite an, und wenn die Seite JavaScript enthält, führt der Browser es aus.
Wenn Du auf das DOM zugreifen willst (also das Objektmodell, das der Browser aus deinem HTML erzeugt hat), musst Du das mit JavaScript tun. In PHP gibt es das nicht.
Ein Ding namens link_wechsel
gibt es in PHP ganz bestimmt nicht. Das ist der Name einer CSS Klasse, und für PHP ist das erstmal nur Text. Wenn PHP ein Wort sieht, dass es nicht kennt, macht es eine Zeichenkette daraus.
Die beiden Zeilen hier machen das gleiche:
$hallo = link_wechsel;
$hallo = "link_wechsel";
Jaaa, okaaay - nicht exakt das gleiche. PHP hat einen Befehl namens define
, mit dem könntest Du link_wechsel
eine andere Bedeutung geben. Aber das lassen wir hier mal weg. Solange kein define(link_wechsel, ...)
gemacht wurden, tun die beiden Zeilen das gleiche.
Hier im Thread sind zwei Lösungsvarianten diskutiert worden:
(1) PHP weiß, welche Seite es anzeigt, und erzeugt am Link entsprechende Attribute oder Klassen. Um das zu machen, müsstest Du an der Stelle, wo Du das <nav> Element ausgibst, Logik einbauen.
(2) Du machst es mit JavaScript und trägst das Attribut erst im Browser ein. Dann muss die Seite aber auch JavaScript enthalten.
Rolf
sumpsi - posui - clusi