Domanda

Lo lingue supporto YUI RTL? (Rtl: da destra a sinistra, come l'ebraico o arabo).

Se sì, come? Voglio visualizzare una barra dei menu in cui i diversi elementi del menu Start in prossimità del margine destro e andate a sinistra.

È stato utile?

Soluzione

Non c'è supporto per le lingue RTL in YUI 2.x. Ho presentato un bug su di esso più di un anno fa e ricevuto una risposta dicendo che potrebbero aggiungerlo in una versione successiva. (Non riesco più a trovare il bug in quanto sono passati a loro nuovo inseguitore, mi spiace.) Spero che stanno aggiungendo il supporto per RTL YUI 3.x, ma non ho controllato le preview release (né posso trovarli menzionare l'aggiunta di supporto RTL).

Questo non vuol dire che i menu YUI non possono fare RTL, anche se ci vuole un po 'di lavoro in quanto non c'è supporto incorporato. Non faccio affermazioni che questo funziona al 100% in tutti i browser, soprattutto non IE.

In primo luogo, è necessario le voci di menu a scorrere nella direzione opposta, e iniziare sul lato opposto della pagina. Credo che questo funziona nella maggior parte dei browser (tranne IE6, naturalmente, Argh - per questo browser, è necessario fare qualche lavoro extra, che non mi ricordo la risposta):

.yuimenubaritem { float: right; }

In secondo luogo, è necessario il sottomenu della MenuBar di fluire nella direzione opposta. È possibile farlo modificando il submenualignment attributo configurazioni vostri menu:

// 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"] });

La parte peggiore sta cercando di ottenere gli eventi di tastiera per funzionare correttamente, come a questo punto pressante destro rende il cursore andare a sinistra e viceversa. Per fare ciò, si dovrà dirottare di MenuBar _onKeyDown () e modificarlo in modo che, se il MenuBar è impostato RTL (memorizzare queste informazioni in un var da qualche parte), elabora sinistra / destra un po 'diverso. (Siamo spiacenti, si dovrà calcolare questo fuori da soli, ma dovrebbe essere una semplice questione di passare casi su pressione di un tasto).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top