我想在所有网站上添加前缀href链接例如-i想要添加前缀 - xyz.com/url?在所有链接上 - 假设一个href链接是网址是 - fpqr.com。添加该显示的前缀 - http://www.xyz.com/url?http://www.fpqr.com
答案 0 :(得分:3)
我写了这段代码:
var prefix = "http://www.xyz.com/url?";
$('a').each(function(){
var currentHref = $(this).attr('href');
$(this).attr('href',prefix+currentHref);
});
答案 1 :(得分:1)
使用jQuery
之类的东西可以解决问题:
$('a').each(function() {
$(this).prop('href', 'http://prefix.com/?x=' + $(this).prop('href'))
});
答案 2 :(得分:0)
此类网址重写应仅在网络服务器级别处理。
如果您的Web服务器是apache,那么您需要在httpd.conf中执行此操作。
RewriteCond %{HTTP_HOST} !^www\.fpqr\.com [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{SERVER_PORT} !^80$
RewriteRule ^/(.*) http://www.xyz.com/url/%{HTTP_HOST} [L,R]
答案 3 :(得分:0)
var prefix = 'prefix';
$('a').attr('href', prefix +$('a').attr('href'));
希望这有点帮助。
答案 4 :(得分:0)
有一个(实时)链接集合,其中包含页面中的所有链接,因此您可以轻松访问页面中的所有链接并修改其href,如:
var links = document.links;
for (var i=0, iLen=links.length; i<iLen; i++) {
// use of \/\/ is to avoid SO posting rules
links[i].href = 'http:\/\/xyz.com/url?' + links[i].href;
}
请注意,并非所有A元素都是链接,它们可以是锚点(即具有名称或ID而不具有href属性)。添加href会将锚点更改为链接,也可能不是您想要做的事情。