是否有可以识别网页中电话号码的javascript 库?就像 Skype 在他们的 Firefox 插件上所做的一样。
或者你知道怎么做的方法吗?这样做的网站或任何教程都会非常有帮助。
非常感谢您的回复。
最好的,
最佳答案
var makePhoneLinks = function()
{
var tNodes = [];
getTextNodes(document.body,false,tNodes,/(((\(\d{3}\) ?)|(\d{3}-))?\d{3}-\d{4})/ig);
var l = tNodes.length;
while(l--)
{
wrapNode(tNodes[l],/(((\(\d{3}\) ?)|(\d{3}-))?\d{3}-\d{4})/ig,"<a target='#'>$1</a>");
}
}
function getTextNodes(node, includeWhitespaceNodes,textNodes,match) {
if (node.nodeType == 3) {
if (includeWhitespaceNodes || !/^\s*$/.test(node.nodeValue)) {
if(match){
if(match.test(node.nodeValue))
textNodes.push(node);
}
else {
textNodes.push(node);
}
}
} else {
for (var i = 0, len = node.childNodes.length; i < len; ++i) {
getTextNodes(node.childNodes[i],includeWhitespaceNodes,textNodes,match);
}
}
}
function wrapNode(n,match,m) {
var temp = document.createElement('div');
if(n.data)
temp.innerHTML = n.data.replace(match, m);
else{
//whatever
}
while (temp.firstChild) {
n.parentNode.insertBefore(temp.firstChild,n);
}
n.parentNode.removeChild(n);
}
关于javascript - Javascript 中的电话号码识别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2807113/