0

言語をチェックして正しい .html ファイルにリダイレクトするためのコードを入手しました。Android では問題なく動作しますが、iOS では動作しません。iOS で何か違うのでしょうか、それともコードの何が問題なのですか?

助けてください!

コード:

 document.addEventListener("deviceready", onDeviceReady, false);

  // Cordova is ready
  //
  function onDeviceReady() {
   navigator.globalization.getPreferredLanguage(
   function (language)
   {
       if(language.value == "English")
       {
           window.location.replace("fadeE.html");
       }
       else if(language.value == "Deutsch")
       {
           window.location.replace("fade.html");
       }
        else if(language.value == "Nederlands")
       {
           window.location.replace("fadeN.html");
       }
       else 
       {
           window.location.replace("fadeE.html");
       }
   },
   function ()
   {
       alert('Error getting language\n');
   }
 );

}
4

2 に答える 2

0

他のすべての人にとって、なぜそれがそのように機能しないのか疑問に思っています:

language.value は iOS では異なります。

Deutsch = de
English = en
Niederlands = nl
于 2013-06-27T11:59:00.397 に答える
0
var userLang = navigator.language || navigator.userLanguage

これは私にとってはうまくいきました。少なくとも IOS では、navigation.globalization に何らかの問題があるようです。「en」や「de」などの最初の 2 文字のみが必要な場合は、次のスニペットを使用します。
userLang = userLang.substr(0,2);

于 2014-05-09T12:40:47.967 に答える