html - ändere die Sprache mit element.lang

8

Erste Frage auf Stack, also hurra zu mir! Ich versuche, einen neuen Weg zu entwickeln (anscheinend, da ich online keine Lösung gesehen habe, vielleicht weil es nicht möglich ist), die Sprache der HTML-geschriebenen Elemente mit JS und der lang -Eigenschaft zu ändern.

Grundsätzlich habe ich mehrere Tags mit der lang-Eigenschaft in jedem von ihnen erstellt, so dass die bestimmte lang einen Anzeigewert von -none-, versteckt es und einen Wert von -inherit-, um es anzuzeigen. Auf diese Weise mit der Zeile:

%Vor%

Ich kann eine Sprache auf einmal sehen. Und das funktioniert!

Nun habe ich ein

erstellt %Vor%

Umranden Sie den englischen Text und das Gleiche mit jeder anderen Sprache mit ihrer eigenen lang -Eigenschaft. Ich habe versucht zu verwenden:

%Vor%

Was nicht zu funktionieren scheint.

Irgendwelche Ideen?

Danke einen Haufen, Shay

    
Shay Stibelman 28.11.2012, 13:33
quelle

3 Antworten

14

Wenn Sie Ihre Seite laden, erhalten Sie <body class="it"> und alle :lang(en) -Tags werden ausgeblendet.

%Vor%

Und wenn Sie die Sprache ändern müssen, ändern Sie einfach className von <body> .

%Vor%

Was ist eleganter und viel schneller.

demo: Ссылка

Verwenden Sie :not selector, damit es mit mehr Sprachen funktioniert. Demo

%Vor%     
xiaoyi 28.11.2012, 14:24
quelle
2

Haben Sie "klick" mit) geschlossen?

%Vor%     
obl 28.11.2012 14:24
quelle
1

Das ist falsch:

%Vor%

Es gibt kein Attribut "display", stattdessen verwenden Sie:

%Vor%

Oder einfach:

%Vor%

... aber Sie haben hier auch einen Fehler, bei dem Sie Ihre Funktion nicht korrekt umschlossen haben:

%Vor%

Sollte sein: });

%Vor%

Außerdem würde ich inline anstatt inherit verwenden. "Erben" bedeutet nicht "Standard", sondern "erbt diese Eigenschaft vom Elternteil", was wahrscheinlich block ist. <a> 's Standardanzeige ist inline .

    
Wesley Murch 28.11.2012 13:44
quelle

Tags und Links