2011-05-19 32 views
0

我为在平台上构建网站的公司工作。用JQuery或Javascript重写相对URLS

我们遇到了相关网址的问题。我们使用的整个平台使用相对的URLS,我需要能够重写它们,但我只能访问JQuery或Javascript。

我们网站的页眉和页脚正在被包含在另一个网站上,所以它弄乱了相关链接。如果我们可以将它们重写为绝对的,那么这将解决所有问题。

(现在相对链接显示为sub.domain.com/page我需要它domain.com/php)

我需要重写从/页的URL来domain.com/但只有在一定的div容器

页 “#DIV1”

“#DIV2”

“#DIV3”

请帮助。谢谢!如果你认为你可以帮助但需要更多信息,我也可以尝试更好地解释。

回答

3

你的意思是“#div1 a”对不对?

也许这是一个有效的解决方案:

var newDomain = "http://new.domain.com"; 

$("#div1 a, #div2 a, #div3 a").each(function(){ 
    var href = newDomain + $(this).attr('href'); 
    $(this).attr("href", href); 
}); 

试试吧,告诉我,如果它的工作原理有关。 :) 再见。

+0

不需要将'this'包装在jQuery对象中...只需获取并设置'this.href'(确保首先检查它不是'undefined') – 2011-05-19 17:02:00

+2

是的,这是一个很好的观点。但也许可以变成与IE等旧浏览器不兼容。如果我没有弄错,IE上的.href返回绝对路径,而其他浏览器只是相对的(如果适用)。 – 2011-05-19 17:03:52