Я был направлен в проект Linkify на GitHub (https://github.com/cowboy/javascript-linkify) для поиска и «связывания» URL-адресов и доменов, только плавающих в тексте.Замените textNode текстом HTML в Javascript?
Это потрясающе! Он полностью работает над текстом!
Однако я не совсем уверен, как заставить его работать с текстовымNode, который имеет текст, который я хочу связать.
Я понимаю, что textNode имеет только textContent с .. это весь текст. Так как эта функция Linkify возвращает HTML как текст, есть ли способ взять textNode и «переписать» HTML внутри него с выходом Linkify?
Я играл с ним на JSFiddle здесь: http://jsfiddle.net/AMhRK/9/
function repl(node) {
var nodes=node.childNodes;
for (var i=0, m=nodes.length; i<m; i++)
{
var n=nodes[i];
if (n.nodeType==n.TEXT_NODE)
{
// do some swappy text to html here?
n.textContent = linkify(n.textContent);
}
else
{
repl(n);
}
}
}
Ваш примерный код настолько грязный и так много, что я даже не знаю с чего начать! Можете ли вы немного почистить его и просто иметь нормальный пример и тот, который вы хотите с помощью textNode? –
http://jsfiddle.net/AMhRK/4/ – Ryan
@ryan это близко, но вы видите, что он управляет уже правильно гиперссылками. – Jippers