开源软件名称(OpenSource Name):Antonio-Laguna/jqueryTranslator开源软件地址(OpenSource Url):https://github.com/Antonio-Laguna/jqueryTranslator开源编程语言(OpenSource Language):CSS 100.0%开源软件介绍(OpenSource Introduction):#jqueryTranslator jqueryTranslator is a jQuery plugin which allows developers to translate a static web site easily.
Now you can see a demo. Usage & DocumentationJust include one of the plugin files in your file. Use the "data-translate" attribute on DOM elements you want to be translated <h1 data-translate="hello"> Hello! </h1>
<img data-translate="img" alt="This is an image!" src="someimage.jpg" /> The "hello" and "img" words serve as sort of key so it's easier to locate the translation. Create a JSON language file with the translations:index-es.json: {
"hello": "Hola!"
"img" : "Esto es una imagen!"
} Call the plugin!
In-depth explanation and DocumentationThe first argument the plugin receives, is the package that it has to load. You may have different packs for different parts of the website (header, dialogs, etc); You can load more than one package like this: $("[data-translate]").jqTranslate(['index', 'header', 'footer']); If the language of the user's browser is "es", the plugin will try to load:
If the language also has a country code, like "es-MX", the plugin will ALSO try to load the following:
This can provide you more customization for different regions. Unfortunately, most of current browsers (desktop) only have the language portion though mobile ones use to have both. OptionsAn object containing parameters. Please, note that all parameters are optional.
AdvancedHere are some advanced tricks you can use and some extra info. First, let's see how the plugin reacts to the elements:
Changing multiple attributes for each elementIf the key for a given value contains nested values, it will try change them all. Please, have in mind that you are responsible of supplying the correct attributes. For example: index-es.json: {
"hello": "Hola!"
"img" : {
"text" : "Esto es una imagen!",
"src" : "linktootherimage.jpg"
}
} The text attribute will replace the normal behaviour and will follow the aforementioned rules to translate the element. The remaining attributes will be directly changed on the element. FAQHow can I translate my jQuery Mobile application?Using jQuery Mobile 1.1 and further$(document).on('pagecreate','#home',function(event){
$("[data-translate]").jqTranslate('index', { asyncLangLoad: false });
}); Pre jQM 1.1$('#home').live('pagecreate',function(event){
$("[data-translate]").jqTranslate('index', { asyncLangLoad: false });
}); Where #home is the ID of the page. Also, have in mind that you may need to refresh the page element in order to be displayed correctly. Please, head to the jQuery Mobile documentation to have more info about those methods. My page isn't being translated!The most common cause of this, is because the JSON package isn't valid. To check it, please use some kind of validation service such as JSONLint. ContributingYou are invited to contribute code and make suggestions to this project. If you're interested in contributing, please fork the repository, make your changes, and send a pull-request. Also, consider submitting your own's language localization and I'll include them in the demo page! Learn more about how to fork and pull-requests. Credits & LicensingDual licensed under the GPL (http://dev.jquery.com/browser/trunk/jquery/GPL-LICENSE.txt) and MIT (http://dev.jquery.com/browser/trunk/jquery/MIT-LICENSE.txt) licenses. Written by Antonio Laguna (@Belelros) Please use it, and contribute changes. Based on Jim Garvin's Localisation jQuery plugin. https://github.com/coderifous/jquery-localize |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论