common.js 740 B

1234567891011121314151617181920212223242526
  1. function format() {
  2. var a = arguments;
  3. if (a[0]) return a[0].replace(/\$(?:\{(\d+)\}|(\d+))/g, function(v, g1, g2) {
  4. g1 = a[g1 || g2];
  5. if (g1 == undefined) g1 = v;
  6. return g1;
  7. });
  8. }
  9. function initI18n(callback){
  10. window.addEventListener('DOMContentLoaded',function(){
  11. var nodes=document.querySelectorAll('*[data-i18n]'),i,t;
  12. for(i=0;i<nodes.length;i++) nodes[i].innerHTML=_(nodes[i].getAttribute('data-i18n'));
  13. if(callback) callback();
  14. },true);
  15. }
  16. function getLocaleString(dict,key){
  17. var lang=navigator.languages,i,lkey;
  18. for(i=0;i<lang.length;i++) {
  19. lkey=key+':'+lang[i];
  20. if(lkey in dict) {
  21. key=lkey;break;
  22. }
  23. }
  24. return dict[key]||'';
  25. }
  26. var _=chrome.i18n.getMessage,$=document.querySelector.bind(document);