Frage

Ist YUI Unterstützung rtl Sprachen? (Rtl: rechts nach links, wie Hebräisch oder Arabisch).

Wenn ja, wie? Ich mag ein MenuBar anzuzeigen, in dem die verschiedenen Menüpunkte in der Nähe des rechten Randes beginnen und nach links zu gehen.

War es hilfreich?

Lösung

Es gibt keine Unterstützung für RTL Sprachen in YUI 2.x. Ich legte einen Fehler über es über ein Jahr vor und bekam eine Antwort sagen, dass sie es in einem späteren Release hinzufügen könnten. (Ich kann nicht mehr, den Fehler finden, da sie zu ihrem neuen Tracker geschaltet, sorry.) Hoffentlich sie Hinzufügen von RTL Unterstützung für YUI 3.x, aber ich habe nicht die Vorversionen ausgecheckt (noch finde ich sie zu erwähnen, das Hinzufügen RTL-Unterstützung).

Das ist nicht YUI Menüs zu sagen, können RTL nicht tun, obwohl es ein wenig Arbeit nimmt, da es keine integrierte Unterstützung. Ich mache keine Ansprüche, die dieses 100% in allen Browsern funktionieren, vor allem nicht IE.

Zuerst müssen Sie die Menüpunkte die entgegengesetzte Richtung fließen, und auf der gegenüberliegenden Seite der Seite beginnen. Ich glaube, dass dies in den meisten Browsern (außer IE6, natürlich, argh - für diesen Browser, müssen Sie einige zusätzliche Arbeit tun, die ich erinnere mich nicht, die Antwort auf):

.yuimenubaritem { float: right; }

Zweitens müssen Sie die Untermenüs der MenuBar die entgegengesetzte Richtung fließen. Sie können dies tun, indem Sie die submenualignment Attribut Ihres Menüs Konfigurationen:

// For the main submenu
new YAHOO.widget.MenuBar("id", { submenualignment: ["tr","br"] });

// You have to manually add all the Menus,
// so that you can set the submenualignment on each.
new YAHOO.widget.Menu("id", { submenualignment: ["tl","tr"] });

Der schlimmste Teil versucht, die Tastatur-Ereignisse zu erhalten richtig zu arbeiten, wie es an diesem Punkt dringendsten rechts der Cursor kehrt umge gehen Sie nach links und macht. Um das zu tun, werden Sie es kapern müssen MenuBar der _onKeyDown () und ändern, so dass, wenn das MenuBar RTL gesetzt (speichern Sie diese Information in einer var irgendwo), verarbeitet sie nach links / rechts ein wenig anders. (Sorry, Sie werden diese eine herausfinden müssen, auf eigene Faust, aber es sollte eine einfache Sache der Schalt Fällen auf Tastendrücke werden).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top