僅IE6/7/8中innerHTML返回值忽略英文空格的問題
更新時間:2011年04月07日 21:47:07 作者:
僅IE6/7/8中innerHTML返回值忽略英文空格的問題,需要此問題的朋友可以參考下。
如下
<div id="user"> jack</div>
<script>
alert(document.getElementById('user').innerHTML.length);
</script>
div[id=user]中的文本"jack"前有兩個英文空格,各瀏覽器下結(jié)果如下
IE6/7/8 : 彈出4,即忽略了空格
IE9/Firefox/Safari/Chrome/Opera : 彈出6,即沒有忽略空格
另換成中文空格不會有這個問題。
以下是Gray Zhang的補(bǔ)充:
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,都會變成一個空格
復(fù)制代碼 代碼如下:
<div id="user"> jack</div>
<script>
alert(document.getElementById('user').innerHTML.length);
</script>
div[id=user]中的文本"jack"前有兩個英文空格,各瀏覽器下結(jié)果如下
IE6/7/8 : 彈出4,即忽略了空格
IE9/Firefox/Safari/Chrome/Opera : 彈出6,即沒有忽略空格
另換成中文空格不會有這個問題。
以下是Gray Zhang的補(bǔ)充:
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,都會變成一個空格
您可能感興趣的文章:
- js的.innerHTML = ""IE9下顯示有錯誤的解決方法
- IE6-IE9不支持table.innerHTML的解決方法分享
- IE6/7/8/9中Table/Select的innerHTML不能賦值的解決方法
- Javascript在IE下設(shè)置innerHTML時出現(xiàn)未知的運(yùn)行時錯誤的解決方法
- 解決IE下select標(biāo)簽innerHTML插入option的BUG(兼容IE,FF,Opera,Chrome,Safari)
- innerHTML 和 getElementsByName 在IE下面的bug 的解決
- IE bug table元素的innerHTML
- JS 動態(tài)獲取節(jié)點代碼innerHTML分析 [IE,FF]
- IE 下的只讀 innerHTML
- IE innerHTML,outerHTML所引起的問題
- IE6與IE7中,innerHTML獲取param的區(qū)別
- IE6/IE7/IE8/IE9中tbody的innerHTML不能賦值的完美解決方案
相關(guān)文章
基于JavaScript實現(xiàn)網(wǎng)頁倒計時自動跳轉(zhuǎn)代碼
這篇文章主要介紹了基于JavaScript實現(xiàn)網(wǎng)頁倒計時自動跳轉(zhuǎn)代碼 的相關(guān)資料,需要的朋友可以參考下2015-12-12JavaScript 無縫上下左右滾動加定高定寬停頓效果(兼容ie/ff)
JavaScript 指定寬度高度的無間斷滾動實現(xiàn)代碼,這樣的效果適合作為焦點新聞的輪播顯示。2010-03-03