给出这个标记:
<div class="myclass">
Lorem ipsum dolor sit amet, http://example.com consectetuer adipiscing elit.
</div>
我需要一个jQuery函数,它(在dom ready事件之后)找到所有.myclass div并将以http(s)://开头的字符串转换为链接,这样上面的示例标记就会产生这样的结果: / p>
<div class="myclass">
Lorem ipsum dolor sit amet, <a href="http://example.com">http://example.com</a> consectetuer adipiscing elit.
</div>
你能帮忙吗?
由于 子
答案 0 :(得分:2)
(function($) {
$(function() {
$('.myclass').each(function() {
var el = $(this);
if (el.html().indexOf('http') > -1) {
var html = el.html();
html = html.replace(/(https?:[\S]+)/gi, '<a href="$1">$1</a>');
el.html(html);
}
});
});
})(jQuery);
答案 1 :(得分:1)
我认为正则表达式here具备你需要的东西。
功能:
function replaceURLWithHTMLLinks(text) {
var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
return text.replace(exp,"<a href='$1'>$1</a>");
}