我是针对查找和“linkifying” URL和域名只是在文本浮在GitHub上Linkify项目(https://github.com/cowboy/javascript-linkify)。用Javascript中的HTML文本替换textNode?
这真棒!它完全适用于文本!
不过,我不太清楚如何使其在具有我想Linkify的文本textNode工作。
我明白textNode仅有的textContent因为..它的所有文本。由于这个Linkify函数将HTML作为文本返回,有没有办法获取textNode,并用Linkify输出“重写”HTML中的HTML?
我一直在玩它的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来做一个例子吗? – 2013-03-21 16:50:35
http://jsfiddle.net/AMhRK/4/ – Ryan 2013-03-21 17:05:49
@ryan它很接近,但你看到它已经损坏了已经正确的超链接的URL。 – Jippers 2013-03-21 17:28:22