Comments (3)
In most of the usecases, the resource files(message json) is at server and it takes a while to get loaded at client. It is not recommended to block the code execution by using synchronous message file loading.
Following is a convenient wrapper around $.fn.i18n that take care of message loading as well.
$.fn.i18nText = function ( key, params ) {
var i18n = $.i18n(),
$element = $( this );
i18n.load( 'i18n/en.json', 'en' ).done( function () {
if ( $element.data( 'i18n' ) ) {
$element.i18n();
} else {
$element.text( $.i18n( key, params ) );
}
} );
return $element;
}
$( document ).ready( function ( $ ) {
$( 'span' ).i18nText( 'key-one', 3 );
} )
I hope that helps
from jquery.i18n.
Now that I wrote this, I am thinking why can't this the jquery.i18n have the above feature? :). I will investigate it as an enhancement. Thanks
from jquery.i18n.
Not sure how I get around blocking for a resource, when my page loads I have script which sometimes runs which needs to show the user a message (error/warning, etc) this script calls into my wrapper to load the string resources for the dismiss buttons on the dialog being created. If I show the message before the resources are fully loaded I get the key of the message rather than the message string.
from jquery.i18n.
Related Issues (20)
- Comma at the end of translations file causes strange behaviour HOT 3
- Implement {{int:}} magic word
- Cannot get data-i18n to work
- Tool to convert from .po to banana file? HOT 4
- data-i18n change multiple attributes HOT 3
- Could you update jquery.i18n.parser.js on line 33 for $ problem HOT 4
- Load whole directory structure. HOT 1
- None existing key is replaced with the key name instead of the fallback text! HOT 4
- All languages become the same HOT 1
- Number formatting HOT 2
- Merge multiple keys HOT 1
- How to load multiple json files in a .html file? HOT 1
- Failed in opening demo index page due to Chrome CORS policy. HOT 2
- New release? HOT 9
- Qunit upgrade causes tests to fail
- the `load` function does not fail the promise correctly HOT 1
- libs/CLDRPluralRuleParser missing from 1.0.8 package HOT 1
- Yo
- Misdafatma Alza Astrafiyah HOT 2
- How can I translate strings dynamically? HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jquery.i18n.