Mufasa schrieb:
Meine Skripte stehen unten ganz am Ende im body. Die haben genau so vorher funktioniert, jetzt gehen die meisten davon aber nicht mehr.
tsseh schrieb:
hier wird das template erst ins dom eingefügt, dort müssen auch die scripte hin
HELL YEAH!!! You're the best


____________________________________________________________________________________________
Mufasa schrieb:
Ist das eigentlich ok wenn so viele Skripte unten im body stehen?
tsseh schrieb:
ich würd alles in eins machen und dann ans ende des body
Die paar, die ich jetzt nach dem Template eingefügt hab, die sollen da bleiben, oder?!? Kann ich die dann auch in eine externe Datei packen und dort einfügen? Etwa so...
Code:
changeLang(e.target.dataset.lang);
});
});
// HIER DEINE SCRIPTE EINFÜGEN
script.src = url; //???
};
};
xhr.send(null);
____________________________________________________________________________________________
Mufasa schrieb:
Wie bzw. wo kann ich einen tieferen Pfad zur Datei eintragen?
tsseh schrieb:
jetzt werden sie ja von diesem pfad geladen
xhr.open("GET", lang + '.json');
den kannst du ja ändern
Aber ich kann doch nicht einfach '.json' ersetzen mit 'assets/lang'. Deswegen hab ich gefragt, weil mir nicht klar ist wo ich den Pfad definieren kann.
Ich könnte ja eine Pfadvariable anlegen wie
var langurl = "/assets/lang";
Nur wo füge ich dann
langurl ein??
____________________________________________________________________________________________
Mufasa schrieb:
Kann man in Abhängigkeit zur gewählten Sprache bestimmte css-Klassen ändern?
tsseh schrieb:
das geht schon, aber einfacher würde ich finden du machst dann klassen ala class-de, class-en, ... und packst alles in eine css datei solange das bei wenigen ausnahmen bleibt
OK, ich hab ja meine Haupt-Style-Datei, das ist "style.css". Dann würde ich eine neue css-Datei anlegen (lang-style.css) und alle sprachspezifischen Änderungen da rein packen. Zum Beispiel gäbe es dann ein
#impressum-de und ein
#impressum-en, ... - Nur wie ersetze ich die dann immer? Meine Standard-Sprache ist ja englisch, das heißt der muss dann
#impressum-en laden und bei Klick auf deutsch dann entsprechend
#impressum-de.
____________________________________________________________________________________________
Gerade fällt mir noch ein Fehler auf. Wenn ich die Sprache ändere, dann werden scheinbar alle DIVs, die geändert werden neu geladen, richtig?!? Bei den meisten ist das auch kein Problem, nur mein Hauptinhalt
#content-wrap ist beim Laden der Seite immer unsichtbar, das heißt
display:none; - Erst mit Klick auf einen Menüpunkt (nicht Sprachwahl) wird es mit
display:block; sichtbar.
Sooo wenn ich das nun sichtbar habe und die Sprache (mit Klick auf ein flag-icon) wechsle, wird das wieder unsichtbar. Hast Du eine Idee wie man das sichtbar lassen könnte? (Meine Idee weiter unten.)
Eine weitere Schwierigkeit ist dabei, dass wenn
#content-wrap unsichtbar ist, dann soll auch eine Sprachumschaltung das nicht ändern. Dann würden eben nur die Menüpunkte und so geändert werden.
Ich hatte gedacht evtl. könnte man bei Klick auf eine Flagge den aktuellen value von
display bei
#content-wrap zum Zeitpunkt der Sprachumschaltung auslesen und dann als neuen Wert übergeben. Was hälst Du davon? Ist das so machbar? Oder fällt Dir noch eine andere/bessere Variante ein?
Dafür hab ich versucht erstmal den aktuellen Wert als alert auszugeben, aber irgendwie funktioniert das nicht. Also.... es tut sich gar nichts, kein alert. Kannst Du mal checken wo der Fehler steckt?
PHP:
var flags = document.getElementsByClassName('flag');
flags.onclick = function() {
alert(document.getElementById("content-wrap").style.display);
};