forked from NYANDEV/forgejo
Merge pull request #1043 from andrew-boyarshin/autolink
Fix span wrapping all the things
This commit is contained in:
commit
d4a7040c7f
1 changed files with 12 additions and 9 deletions
|
@ -1,7 +1,10 @@
|
||||||
jQuery.fn.autolink = function() {
|
jQuery.fn.autolink = function() {
|
||||||
return this.find('*').contents().filter(function () { return this.nodeType === 3; }).each(function() {
|
|
||||||
var re = /((([A-Za-z]{3,9}:(?:\/\/)?)(?:[\-;:&=\+\$,\w]+@)?[A-Za-z0-9\.\-]+|(?:www\.|[\-;:&=\+\$,\w]+@)[A-Za-z0-9\.\-]+)((?:\/[\+~%\/\.\w\-]*)?\??(?:[\-\+:=&;%@\.\w]*)#?(?:[\.\!\/\\\w]*))?)/g;
|
var re = /((([A-Za-z]{3,9}:(?:\/\/)?)(?:[\-;:&=\+\$,\w]+@)?[A-Za-z0-9\.\-]+|(?:www\.|[\-;:&=\+\$,\w]+@)[A-Za-z0-9\.\-]+)((?:\/[\+~%\/\.\w\-]*)?\??(?:[\-\+:=&;%@\.\w]*)#?(?:[\.\!\/\\\w]*))?)/g;
|
||||||
|
return this.find('*').contents()
|
||||||
|
.filter(function () { return this.nodeType === 3; })
|
||||||
|
.each(function() {
|
||||||
$(this).each(function() {
|
$(this).each(function() {
|
||||||
|
if (re.test($(this).text()))
|
||||||
$(this).replaceWith(
|
$(this).replaceWith(
|
||||||
$("<span />").html(
|
$("<span />").html(
|
||||||
this.nodeValue.replace(re, "<a href='$1'>$1</a>")
|
this.nodeValue.replace(re, "<a href='$1'>$1</a>")
|
||||||
|
|
Loading…
Reference in a new issue