Ich verwende ruby annotation, um furigana japanischen Text hinzuzufügen:
%Vor%Wenn ich versuche, 漢字 auszuwählen und es in Safari oder Chrome zu kopieren, sieht die Zwischenablage wie folgt aus:
%Vor%Ich kann das Wort auch nicht aus dem OS X-Wörterbuch nachschlagen.
Gibt es einen Weg, um zu verhindern, dass die Furigana ausgewählt wird? rt { -webkit-user-select: none; }
scheint nicht zu funktionieren.
Es scheint, dass wenn Sie sie in ein <ruby>
-Element einfügen, wie folgt:
Dann ist es möglich, 漢字 ohne die ausgewählten Furiganas auszuwählen.
UPDATE:
Für kanji-kana gemischten Text wie 間 に 合 わ せ る können Sie entweder:
Verwenden Sie das leere <rt>
-Element wie folgt:
Schreibe etwas Javascript und nutze die Zwischenablage-Ereignisse * † :
HTML:
%Vor%Javascript:
%Vor%Hier ist eine Demoseite ‡ : Ссылка
* Getestet auf Safari 6.0.3
† Benötigt möglicherweise neuere Browserversionen
‡ Ich füge die Zeile von css code% co_de hinzu %, um zu verhindern, dass der Furigana-Text (optisch) ausgewählt wird
Hier ist die Vanilla-Javascript-Art, es zu tun:
%Vor% Wie oben erwähnt, wird das Hinzufügen von .replace(/\n/g, '')
nach window.getSelection().toString()
alle neuen Zeilen entfernen, die irgendwie noch herumhängen. .replace(' ', '')
kann auch nützlich sein, wenn der Benutzer auch keine zusätzlichen Leerzeichen erhalten soll. Diese können für Ihren Anwendungsfall wünschenswert oder nicht wünschenswert sein.
Aufbauend auf der akzeptierten Antwort von Rox Dorentus (und in Bezug auf die hilfreiche Javascript-Konvertierung von jpc-ae), ist hier eine Verbesserung des Algorithmus, der nicht den display
Stil der <rt>
Elemente hackt, was sich fragil anfühlt zu mir.
Stattdessen erstellen wir ein Array von Referenzen auf alle Knoten in der Auswahl, filtern nach allen mit dem Tag <rb>
und geben ihr innerText
zurück. Ich biete auch eine auskommentierte Alternative an, falls keine <rb>
-Tags zum Einschließen des Kanjis verwendet werden.
Tags und Links javascript css ruby-characters