var prototype = {};
prototype.string = {};
prototype.string.autolink = function (string, options){
if(!options) options = {};
if(!options.limit) options.limit = 10;
if(!options.tagFill) options.tagFill = '';
var regex = /((http\:\/\/|https\:\/\/|ftp\:\/\/)|(www\.))+(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/gi;
string = string.replace(regex, function(value){
value = value.toLowerCase();
var m = value.match(/^([a-z]+:\/\/)/);
var nice;
var url;
if(m)
{
nice = value.replace(m[1],'');
url = value;
}
else
{
nice = value;
url = 'http://' + nice;
}
return '<a href="' + url + '"' + (options.tagFill != '' ? (' ' + options.tagFill) : '')+ '>' + prototype.string.autolinkLabel(nice, options.limit) + '</a>';
});
return string;
};
prototype.string.autolinkLabel = function (text, limit){
if (!limit){ return text; }
if (text.length > limit){
return text.substr(0, limit - 3) + '...';
}
return text;
};
// Пример создания ссылок по id элемента с тектом (с применением jquery - на этапе инициализации страницы)
$(function(){
prototype.string.autolink($('#my-div-with-plain-text').text());
});