我需要自动链接网页中的网址。
例如
这是一个html内容,包含文本网址www.example.com和链接网址< a href ='www.example.com'>示例< / a>。它可能跟http之后是[http://www.example.com]
我需要结果如下:
这是一个html内容,包含文字网址http://www.example.com和链接网址http://www.example.com。它可能跟着像http://www.example.com
这样的http我使用了以下功能,但它没有使用以www。
开头的网址jQuery.fn.autolink = function() { return this.each(function() { //URLs starting with http://, https://, or ftp:// var re = /((http|https|ftp):\/\/[\w?=&.\/-;#~%-\{\}$!|]+(?![\w\s?&.\/;#~%"=-]*>))/g; $J(this).html($J(this).html().replace(re, '$1 ')); }); }
答案 0 :(得分:0)
尝试这样的事情。这将修改href属性和超链接的html。
$("a").each(function(k,v){
this.attr("href","http://"+this.attr("href"));
this.html("http://www."+this.html()+".com");
})
答案 1 :(得分:0)
使用此功能并将您的锚标记文本URL作为urlname传递并将href作为linkname
传递function replaceURLWithHTMLLinks(urlname, linkname) {
if (linkname && !linkname.match(/^http([s]?):\/\/.*/)) {
linkname = 'http://' + linkname
}
var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/i;
return linkname.replace(exp,"<a href='$1'>"+urlname+"</a>");
}