【问题标题】:Dynamic change language in yandex mapsyandex 地图中的动态更改语言
【发布时间】:2016-11-23 16:46:23
【问题描述】:

我需要更改 yandex 地图中的语言,但我不知道该怎么做! yandex 地图中的语言可以在脚本标签中静态更改。

<script src="http://api-maps.yandex.ru/2.1/?lang=ru_RU&load=package.full"></script>

但我需要在运行应用程序时更改语言。

例如,谷歌地图有加载器:

HTML 代码

<script type="text/javascript" src="https://www.google.com/jsapi"></script>

JavaScript 代码

google.load('maps', '3.7', {
    'other_params' : 'sensor=true&language=' + langCode,
    'callback' : deviceReadyFunc
});

在 yandex 地图中我没有找到。

【问题讨论】:

    标签: yandex-api yandex-maps


    【解决方案1】:

    通过 localStorage 和动态添加 script-tag 解决这个问题。

    JavaScript 代码

    var script=document.createElement('script');
    if (GLOBAL_LANGUAGE === 'en') {
        script.src = 'http://api-maps.yandex.ru/2.1/?lang=en-US&load=package.full';
    } else {
        script.src = 'http://api-maps.yandex.ru/2.1/?lang=ru-RU&load=package.full';
    }
    document.getElementsByTagName('body')[0].appendChild(script);
    script.onload = function() {
        ymaps.ready(init);
    };
    

    在更改localStorage变量GLOBAL_LANGUAGE后运行应用程序我调用reloadApp()方法:

    reloadApp: function() {
        location.href = '#home';
        location.reload();
    }
    

    执行此操作后,yandex 映射更改正在运行的应用程序中的语言。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-29
      • 1970-01-01
      相关资源
      最近更新 更多