如下 复制代码 代码如下: <div id="user"> jack</div> <script> alert(document.getElementById('user').innerHTML.length); </script> div[id=user]中的文本"jack"前有两个英文空格,各浏览器下结果如下 IE6/7/8 : 弹出4,即忽略了空格 IE9/Firefox/Safari/Chrome/Opera : 弹出6,即没有忽略空格 另换成中文空格不会有这个问题。 以下是Gray Zhang的补充: 1、IE6-8下,对于一个元素的firstChild,如果其为TextNode,且nodeValue前n个字符为空格字符(包括空格、t、n、r和一个分页符号U+000C),则这n个字符被忽略 2、在IE6-8下,对一个元素的lastChild,如果其为TextNode,且nodeValue最后n个字符为空格字符(包括空格、t、n、r和一个分页符号U+000C),则这n个字符会被合并为一个空格(ASCII码为32),无论你是t还是n,都会变成一个空格
推荐阅读
Ajax 数据请求的简单分析
比如: 复制代码 代码如下: function xmlHttpR(){ var xmlhttp; if(window.XMLHttpRequest){ xmlhttp=new XMLHttpRequest(); } else{ try{xmlhttp=new ActiveXObject("Msxml2.XMLHTTP")} catch(e){ try{xmlhttp=ne>>>详细阅读
本文标题:仅IE6/7/8中innerHTML返回值忽略英文空格的问题
地址:http://www.17bianji.com/kaifa2/JS/24728.html
1/2 1