欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

精通JavaScript 糾正 cleanWhitespace函數(shù)

 更新時(shí)間:2010年03月11日 16:47:15   作者:  
這個(gè)函數(shù)用在火狐(firefox)上面老是出錯(cuò),今天仔細(xì)研究了下,改正了,希望別人不要遇到我這樣的問題
復(fù)制代碼 代碼如下:

function cleanWhitespace(element){
//如果不提供參數(shù),則處理整個(gè)HTML文檔
element = element || document;
//使用第一個(gè)子節(jié)點(diǎn)作為開始指針
var cur = element.firstChild;
//臨時(shí)變量用來保存當(dāng)前節(jié)點(diǎn)的下個(gè)節(jié)點(diǎn)
var tmp;
//一直到?jīng)]有子節(jié)點(diǎn)為止
while (cur != null){
//保存當(dāng)前節(jié)點(diǎn)的下個(gè)節(jié)點(diǎn)
tmp=cur.nextSibling
//如果節(jié)點(diǎn)為文本節(jié)點(diǎn),應(yīng)且包含空格
if ( cur.nodeType == 3 && ! /\S/.test(cur.nodeValue)){
//刪除這個(gè)文本節(jié)點(diǎn)
element.removeChild( cur );
//否則,它就是一個(gè)元素
} else if (cur.nodeType == 1){
//遞歸整個(gè)文檔
cleanWhitespace( cur );
}
cur = tmp;//遍歷子節(jié)點(diǎn)
}
}

還轉(zhuǎn)一個(gè)可以用的
復(fù)制代碼 代碼如下:

function cleanWhitespace2(node) {
var notWhitespace = /\S/;
for (var i=0; i < node.childNodes.length; i++) {
var childNode = node.childNodes[i];
if ((childNode.nodeType == 3)&&(!notWhitespace.test(childNode.nodeValue))) {
node.removeChild(node.childNodes[i]);
i--;
}
if (childNode.nodeType == 1) {
cleanWhitespace2(childNode);
}
}
}

如果只清除本節(jié)點(diǎn)的空白,不遍歷子節(jié)點(diǎn)
復(fù)制代碼 代碼如下:

function cleanWhitespace2(oEelement)
{
for(var i=0;i<oEelement.childNodes.length;i++){
var node=oEelement.childNodes[i];
if(node.nodeType==3 && !/\S/.test(node.nodeValue)){node.parentNode.removeChild(node)}
}
}

還轉(zhuǎn)一個(gè)可以用的
復(fù)制代碼 代碼如下:

function cleanWhitespace2(node) {
var notWhitespace = /\S/;
for (var i=0; i < node.childNodes.length; i++) {
var childNode = node.childNodes[i];
if ((childNode.nodeType == 3)&&(!notWhitespace.test(childNode.nodeValue))) {
node.removeChild(node.childNodes[i]);
i--;
}
if (childNode.nodeType == 1) {
cleanWhitespace2(childNode);
}
}
}

如果只清除本節(jié)點(diǎn)的空白,不遍歷子節(jié)點(diǎn)
復(fù)制代碼 代碼如下:

function cleanWhitespace2(oEelement)
{
for(var i=0;i<oEelement.childNodes.length;i++){
var node=oEelement.childNodes[i];
if(node.nodeType==3 && !/\S/.test(node.nodeValue)){node.parentNode.removeChild(node)}
}
}

相關(guān)文章

  • Highcharts入門之簡介

    Highcharts入門之簡介

    Highcharts 是一個(gè)用純JavaScript編寫的一個(gè)圖表庫, 能夠很簡單便捷的在web網(wǎng)站或是web應(yīng)用程序添加有交互性的圖表,并且免費(fèi)提供給個(gè)人學(xué)習(xí)、個(gè)人網(wǎng)站和非商業(yè)用途使用。下面通過本文的介紹及實(shí)例一起來學(xué)習(xí)學(xué)習(xí)吧。
    2016-08-08
  • Highcharts學(xué)習(xí)之坐標(biāo)軸

    Highcharts學(xué)習(xí)之坐標(biāo)軸

    今天講交互圖表Highcharts的坐標(biāo)軸,我們將對(duì)Highcharts圖表的坐標(biāo)軸組成、坐標(biāo)軸類型等進(jìn)行詳細(xì)系統(tǒng)講解。下面一起來看看。
    2016-08-08
  • require.js深入了解 require.js特性介紹

    require.js深入了解 require.js特性介紹

    這篇文章主要介紹了require.js深入了解,require.js特性介紹,本文講解了require.js和CommonJS的兼容、CDN回退、循環(huán)依賴、BaseUrl、JSONP等內(nèi)容,需要的朋友可以參考下
    2014-09-09
  • JS日程管理插件FullCalendar中文說明文檔

    JS日程管理插件FullCalendar中文說明文檔

    JS日程管理插件FullCalendar提供了豐富的屬性設(shè)置和方法調(diào)用,開發(fā)者可以根據(jù)FullCalendar提供的API快速完成一個(gè)日歷日程的開發(fā),本文將FullCalendar的常用屬性和方法、回調(diào)函數(shù)等整理成中文文檔,以供參閱。
    2017-02-02
  • 交互式可視化js庫gojs使用介紹及技巧

    交互式可視化js庫gojs使用介紹及技巧

    這篇文章主要介紹了如何使用可視化庫gojs及使用時(shí)的小技巧,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2022-01-01
  • 精通JavaScript 糾正 cleanWhitespace函數(shù)

    精通JavaScript 糾正 cleanWhitespace函數(shù)

    這個(gè)函數(shù)用在火狐(firefox)上面老是出錯(cuò),今天仔細(xì)研究了下,改正了,希望別人不要遇到我這樣的問題
    2010-03-03
  • fullCalendar中文API官方文檔

    fullCalendar中文API官方文檔

    FullCalendar是一款基于jQuery的日歷插件,適用于各種日程安排、工作計(jì)劃等場景,本文是fullCalendar官方文檔的中文版,主要介紹了fullCalendar的具體屬性與方法,大家可以參考一下
    2017-02-02
  • Highcharts入門之基本屬性

    Highcharts入門之基本屬性

    Highcharts是一個(gè)用純JavaScript編寫的一個(gè)圖表庫,之前小編發(fā)了一篇介紹Highcharts的文章,那么本文將進(jìn)一步的介紹Highcharts的基本屬性,有需要的可以參考學(xué)習(xí)。
    2016-08-08
  • node.js中的socket.io入門實(shí)例

    node.js中的socket.io入門實(shí)例

    這篇文章主要介紹了node.js中的socket.io入門實(shí)例,并對(duì)websocket等反向ajax技術(shù)做了介紹,需要的朋友可以參考下
    2014-04-04
  • Three.js學(xué)習(xí)之文字形狀及自定義形狀

    Three.js學(xué)習(xí)之文字形狀及自定義形狀

    今天小編帶大家學(xué)習(xí)的是Three.js的文字形狀與自定義形狀,文章內(nèi)容很詳細(xì),對(duì)大家學(xué)習(xí)Three.js或許有幫助,下面一起來看看吧。
    2016-08-08

最新評(píng)論