我的问题是当我使用这段代码时:
var queuediv = document.getElementById('MSO_ContentTable');
var total = get_text(queuediv);
countTotal = total.split(/\s+/).length;
这是函数
function get_text(el) {
ret = "";
var length = el.childNodes.length;
for (var i = 0; i < length; i++) {
var node = el.childNodes[i];
if (node.nodeType != 8) {
ret += node.nodeType != 1 ? node.nodeValue : get_text(node);
}
}
return ret;
}
它在 IE 中给我不同的值,而其他浏览器给我相同的值。那么我的正则表达式有问题吗?
Thanks.
您正在分裂空白字符(换行符、制表符...)。这些似乎在不同浏览器的 DOM 表示中有所不同。我假设您正在尝试拆分单词。尝试:
total.split(/ /).length;
or
total.replace(/\n\r\f/, '').split(/\s/).length
你可以更换\v
and \t
also.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)