我需要在每个网址[如果还没有]之前在任何锚标记或任何表单操作中附加www [即任何链接都在DOM]中使用jquery。那可能吗?
答案 0 :(得分: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”)。一切都变得有点混乱,你确定这实际上是你需要做的吗?
答案 1 :(得分:0)
$('a').each(function(){
if($(this).attr('href').indexOf('www')!=0){
$(this).attr('href', 'www.'+$(this).attr('href'));
}
});