簡體   English   中英

javascript substr window.location.href

[英]javascript substr window.location.href

這是一個非常初學者的問題,但我不知道 javascript,我只想實現一個我在谷歌上搜索的片段。

原始代碼是:


var langcodes=["it", "es"];
var langCode = navigator.language || navigator.systemLanguage;
var lang = langCode.toLowerCase(); 
lang = lang.substr(0,2); 
var dest = window.location.href; 
for (i=langcodes.length-1;i >= 0; i--){
    if (lang==langcodes[i]){
        dest = dest.substr(0,dest.lastIndexOf('.')) + '-' + lang.substr(0,2) + dest.substr(dest.lastIndexOf('.'));
        window.location.replace ?window.location.replace(dest) :window.location=dest;
    }
}

如果我的瀏覽器語言是 it_IT,將替換

    http://www.mysite.com/test.html 

    http://www.mysite.com/test-it.html 

我想新的 url 是:

    http://www.mysite.com/it/test.html 

我嘗試了幾種方法都沒有運氣。

任何幫助表示贊賞。

最大限度

嘗試這個...

 dest = dest.substr(0,dest.lastIndexOf('/')) + '/' + lang.substr(0,2) + dest.substr(dest.lastIndexOf('/'));

你可以這樣做:

if (lang==langcodes[i]){
    dest = dest.substr(0,dest.lastIndexOf('/') +1) + lang.substr(0,2) + dest.substr(dest.lastIndexOf('/'));
    window.location.replace ?window.location.replace(dest) :window.location=dest;
}

好的,在 www.google.it 上測試並喚醒(輸出 www.google.it/it/)

嘗試這個:

var langcodes=["it", "es"];
var langCode = navigator.language || navigator.systemLanguage;
var lang = langCode.toLowerCase(); 
lang = lang.substr(0,2); 
var dest = window.location.href;

dest = dest.substr(0,dest.lastIndexOf('.')) + '-' + lang + dest.substr(dest.lastIndexOf('.'));
window.location = dest;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM