当前位置:编程学习 > JS >>

FireFox中textNode分片的问题

答案:Ajax应用中很常见的行为便是后台把数据用XML包裹好返回给浏览器,浏览器解析XML,得到nodeValue

如果单个node中内容很长(超过4096字节),这时在FireFox/Mozilla中就要注意了,内容将会被FrieFox分解为多个textNode,每个大小为4096字节。这种情况可以用下列函数处理(IE兼容)

复制代码 代码如下:

function getNodeValue(node)
{
if(node && node.hasChildNodes()){
//return node.firstChild.nodeValue;
var s=""
//Mozilla has many textnodes with a size of 4096
//chars each instead of one large one.
//They all need to be concatenated.
for(var j=0;j<node.childNodes.length;j++){
s+=new String(node.childNodes.item(j).nodeValue);
}
return s;
}else
return "";
}

上一个:如何写一个通用的JavaScript效果库!(1/2)
下一个:发两个小东西,ASP/PHP 学习工具。 用JavaScript写的

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,