0

我有这个网站的链接:

http://example.com/example/index.html#page=page-1

我想检测 URL 的 #page=page-1 部分,并在单击链接时将其添加到http://example.com/example/indexcn.html(使其成为http://example .com/example/indexcn.html#page=page-1)。

这样做的原因是因为我想要一个双语网站,并在选项卡之间切换语言。

我查看了 onclick 函数和 window.location.pathname 函数:

$("a.language").click(function(){
function reloadPageWithHash() {
var initialPage = window.location.pathname;
window.location.replace('http://example.com/#' + initialPage);
}
});

但我不确定从这里去哪里(注意 window.location.pathname 检测到 'example/index.html#page=page-1' 而不仅仅是标签)。

希望有人可以帮助我。(:

谢谢!

4

4 回答 4

0

您可以使用window.location.hash仅获取哈希部分。

例如:

$("a.language").click(function(){
    window.location.href = 'http://example.com/' + window.location.hash;
    return false; // prevent default action if any
});

注意:我已经删除了回调函数中的冗余函数。

于 2013-07-16T03:20:16.720 回答
0

你可以试试这个,这可能会有所帮助:

$(document).ready(function () {
    var thisUrl = window.location.href;
    var strOptions = thisUrl.split('#');
    var strQuerystring = strOptions[1];

    var strURL = 'http://example.com/example/indexcn.html' + strQueryString;
}
于 2013-07-16T05:12:51.567 回答
0
$(document).ready(function(){
$("a.lang").click(function(event){
event.preventDefault();
window.location.href = 'http://example.com' + window.location.hash;
});
});

到处玩,这对我有用。(:

于 2013-07-16T03:57:38.227 回答
0

您可以使用onhashchange来监听 URL 哈希的更改:

function locationHashChanged() {
    if (location.hash === "#page-1") {
        doSomething();
    }
}

window.onhashchange = locationHashChanged;

或者使用 jQuery:

$(window).hashchange(myCallback);
于 2013-07-16T04:06:05.383 回答