Hogyan honosÃtsunk szöveget a .js fájlban |
|
Written by Cashman
|
Wednesday, 27 June 2007 |
Szöveg honosítása a .js fájlban Probléma : a kiterjesztések olyan mappákat tartalmaznak, amelyekben különbözÅ‘ nyelvi fájlok találhatóak. Néha viszont maradnak nem lefordított szavak esetleg mondatok, melyeket nem lehet entitásokká alakítani a megszokott módon, mert egy .js fájlban találhatóak. Tételezzük fel, hogy a .js fájlban a következÅ‘ szöveget találta: if ( password == userPassword ) { oPrefs.setBoolPref("access.authenticated", true); } else { alert ("Invalid password"); ...... function clear() { sure = confirm("Are you sure?"); | ElÅ‘ször a nyelvi mappában egy myextension.properties fájlt kell kialakítania, majd egyszerűen írja bele a változók neveit és a szavakat vagy szövegeket, amelyek a felhasználónak megjelennek. Példa : WrongPassMessage=Helytelen jelszó AreYouSureMessage=Biztos benne? (ahol a Helytelen jelszó és a Biztos benne? lesznek azok a szövegek, amelyek megjelennek a felhasználónak) Megjegyzés : aelegendÅ‘ az = jel | Most térjen vissza a .js fájlhoz, ahol a fordítani kívánt szövegek találhatóak. A fájl legelején alakítson ki egy karakterláncot (bundle) a properties fájl címével, amelyben a lefordított szövegek találhatóak. var gBundle = Components.classes["@mozilla.org/intl/stringbundle;1"].getService(Components.interfaces.nsIStringBundleService); var mystrings = gBundle.createBundle("chrome://myextension/locale/myextension.properties"); Ezután következik az összes olyan változó listája, amelyeket az adott .js fájlban kezelni kell: var wrongpassalert = mystrings.GetStringFromName("WrongPassMessage"); var confirmmessage=mystrings.GetStringFromName("AreYouSureMessage"); | Ezután már a .js fájlban használhatja azokat a változókat, amelyekre éppen szüksége van. Figyelje meg a példát: if ( password == userPassword ) { oPrefs.setBoolPref("access.authenticated", true); } else { alert (wrongpassalert); function clear() { sure = confirm(confirmmessage); |
|
Last Updated ( Sunday, 02 September 2007 )
|