FireFox中textNode分片的问题

2016-02-19 10:11 1 1 收藏

下面图老师小编要跟大家分享FireFox中textNode分片的问题,简单的过程中其实暗藏玄机,还是要细心学习,喜欢还请记得收藏哦!

【 tulaoshi.com - Web开发 】

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;jnode.childNodes.length;j++){ 
                        s+=new String(node.childNodes.item(j).nodeValue); 
                } 
                return s; 
        }else 
                return ""; 

来源:http://www.tulaoshi.com/n/20160219/1593719.html

延伸阅读
标签: Web开发
尽管那需要用长串的、沉闷的不同分支代码来应付不同浏览器的日子已经过去,偶尔还是有必要做一些简单的区分和目标检测来确保某块代码能在用户的机器上正常运行。在这篇文章中,网页教学网介绍了7个在IE和Firefox中不同的JavaScript句法。 1. CSS "float" 值 访问一个给定CSS 值的最基本句法是: ,使用驼峰写法来替换有连接...
标签: Web开发
有这样一段代码:if (RegExp.test(num))的结果,在IE中每次都为TRUE,而在Fire fox中若第一次为True,第二次必为False,后面交替出现。大概看了一下过往的解决办法: 方法一:把if (RegExp.test(num))改为if (num.match(RegExp)) 方法二:使用RegExp对象处理,也就是 new RegExp("^(-)?[0-9]*$") 也不知道都验证过没有,...
标签: Web开发
在调试js时遇到一些恶心的问题,于是做了一个测试程序,放到网上让大家帮我测试。帖子见http://vchelp.net/cndevforum/subject_view.asp?page=-1&subject_id=165791 下面我给出关于测试的解释: 起因源于我想做这么一个网页:用户上传一个图片后,如果图片大于500象素,则在客户端把图片缩小成500象素大小。但是不想让用户看到这个大小调整...
标签: 浏览器
IE浏览器快速打开当前Firefox中的网页链接   首先用Firefox浏览器打开以下的网站进行安装, 附加组件下载地址:https://addons.mozilla.org/zh-CN/firefox/addon/6366 打开下载页面后,点击页面中央的添加到Firefox安装FireGestures,安装完毕后浏览器会提示你需要重启以便使插件生效。 重启Firefox浏览器后点击菜单...
iPhone中的勿扰模式问题 iPhone的勿扰模式出现问题并不是个别情况,而是勿扰模式本身出现了系统错误。错误出现的原因在于iOS系统时间的算法并没有考虑到跨年对应的问题导致时间对应错乱。这也是为什么官网说勿扰模式会再1月7日自动回复正常。 国外TUAW网站首先刊出类似推测,但其中有严重ISO时间概念错误已经被指出;本文是在其基...

经验教程

650

收藏

77
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部