我需要使用 jquery 在任何锚标记或任何表单操作 [即任何链接位于 DOM] 中的每个 url [如果还没有] 之前附加 www。那可能吗?
问问题
96 次
2 回答
1
这不适合http://
(和其他变体),但你可以这样做......
$("a").each(function(){
var href = $(this).attr("href");
if(href.indexOf("www.") != 0){
$(this).attr("href", "www." + href);
}
});
form
标签使用该属性action
,所以如果你也想要,你将不得不做一些额外的代码。要么检查标签名称,要么为表单创建一个新循环。像这样的东西:
$("a, form").each(function () {
var attr = $(this).prop("tagName") == "FORM" ? "action" : "href";
var href = $(this).attr(attr);
if (href.indexOf("www.") != 0) {
$(this).attr(attr, "www." + href);
}
});
注意:这只是一个例子。有很多事情需要考虑。我已经提到了方案问题(http 等),那么您必须考虑相对路径(即“/folder/page.html”)。一切都变得有些混乱,您确定这实际上是您需要做的吗?
于 2013-05-17T13:42:22.123 回答
0
$('a').each(function(){
if($(this).attr('href').indexOf('www')!=0){
$(this).attr('href', 'www.'+$(this).attr('href'));
}
});
于 2013-05-17T13:49:30.170 回答