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

JavaScript實(shí)現(xiàn)節(jié)點(diǎn)的刪除與序號重建實(shí)例

 更新時間:2015年08月05日 11:46:10   作者:皮蛋  
這篇文章主要介紹了JavaScript實(shí)現(xiàn)節(jié)點(diǎn)的刪除與序號重建方法,涉及javascript針對頁面節(jié)點(diǎn)的刪除與遍歷技巧,非常具有實(shí)用價值,需要的朋友可以參考下

本文實(shí)例講述了JavaScript實(shí)現(xiàn)節(jié)點(diǎn)的刪除與序號重建。分享給大家供大家參考。具體如下:

這里演示JavaScript節(jié)點(diǎn)的刪除與重建方法,刪除節(jié)點(diǎn)后,會自動重新建立節(jié)點(diǎn),序號自動排列,比如刪除當(dāng)前的第3條數(shù)據(jù)后,第4條的序號會智能變?yōu)?,以此類推,保證序號不亂。

運(yùn)行效果如下圖所示:

刪除前:

刪除后:

具體代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>節(jié)點(diǎn)重建、示例代碼</title>
<style type="text/css">
html{color:#000;background:#FFF;font-family:Arial, Helvetica, sans-serif;}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}
li{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
q:before,q:after{content:'';}
abbr,acronym{border:0;font-variant:normal;}
sup{vertical-align:text-top;}
sub{vertical-align:text-bottom;}
input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select{*font-size:100%;}
legend{color:#000;}
body{text-align:center;color:#000;}
a:link,a:visited,a:hover{text-decoration:none;color:#049;}
a:hover{text-decoration:underline;}
table{margin:30px auto;width:600px;border:1px solid #CDCDCD;}
thead{background-color:#F3F3F3;}
th,td{height:26px;line-height:26px;font-size:14px;text-align:center;}
.left{text-align:left;}
</style>
<base target="_blank" />
</head>
<body>
<table cellpadding="0" cellspacing="0">
<thead>
  <tr>
    <th width="50">編號</th>
    <th>標(biāo)題</th>
    <th width="50">操作</th>
  </tr>
</thead>
<tbody id="reroder-list">
  <tr>
    <td>1</td>
    <td class="left"><a href="http://www.dbjr.com.cn/article/70631.htm">JS+CSS實(shí)現(xiàn)表格高亮的方法</a></td>
    <td><a href="#del" class="lnk-del">刪除</a></td>
  </tr>
  <tr>
    <td>2</td>
    <td class="left"><a href="http://www.dbjr.com.cn/article/70625.htm">JavaScript節(jié)點(diǎn)及列表操作實(shí)例小結(jié)</a></td>
    <td><a href="#del" class="lnk-del">刪除</a></td>
  </tr>
  <tr>
    <td>3</td>
    <td class="left"> <a href="http://www.dbjr.com.cn/article/70613.htm">JavaScript實(shí)現(xiàn)刪除,移動和復(fù)制文件的方法</a></td>
    <td><a href="#del" class="lnk-del">刪除</a></td>
  </tr>
  </tbody>
</table>
<script type="text/javascript">
var delAndReorder = function(root,rowTag,delTag,delClass,idTag){
  var doc = document, 
  list = doc.getElementById(root || 'reroder-list');
  if(!list){
    return false;
  }
  var stopEvent = function(evt){
    stopPropagation(evt);
    preventDefault(evt);
  }, 
  stopPropagation = function(evt){
    if (evt.stopPropagation) {
      evt.stopPropagation();
    }
    else {
      evt.cancelBubble = true;
    }
  }, 
  preventDefault = function(evt){
    if (evt.preventDefault) {
      evt.preventDefault();
    }
    else {
      evt.returnValue = false;
    }
  },
  hasClass = function(elem, className){
    var has = new RegExp("(?:^|\\s+)" + className + "(?:\\s+|$)");
    return has.test(elem.className);
  },
  byClass = function(tag,className,root){
    var elems = [], 
    tempEl = root.getElementsByTagName(tag),
    i, 
    len = tempEl.length;
    
    for (i = 0; i < len; ++i) {
      if (hasClass(tempEl[i], className)) {
        elems.push(tempEl[i]);
      }
    }
    if (elems.length < 1) {
      return false;
    }
    else {
      return elems;
    }
  },
  firstTds = [],
  rows = list.getElementsByTagName(rowTag || 'tr'),
  delBtns = byClass((delTag || 'a'), (delClass || 'lnk-del'), list),
  i = 0, 
  len = rows.length,
  reorder = function(idx){
    var i = idx, len = firstTds.length;
    if(idx!==(len-1)){
      for(;i<len;i+=1){
        firstTds[i].innerHTML = i;
      }
    }
  };
  for (; i < len; i += 1) {
    firstTds.push(rows[i].getElementsByTagName(idTag || 'td')[0]);
    delBtns[i].onclick = function(idx){
      return function(event){
        var evt = event || window.event;
        list.removeChild(rows[idx]);
        reorder(idx);
        delAndReorder();
        stopEvent(evt);
      };
    }(i);
  }
}  
delAndReorder();
</script>
</body>
</html>

希望本文所述對大家的javascript程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • js+canvas實(shí)現(xiàn)驗(yàn)證碼功能

    js+canvas實(shí)現(xiàn)驗(yàn)證碼功能

    這篇文章主要為大家詳細(xì)介紹了js+canvas實(shí)現(xiàn)驗(yàn)證碼功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • 微信小程序頁面間傳遞數(shù)組對象方法解析

    微信小程序頁面間傳遞數(shù)組對象方法解析

    這篇文章主要介紹了微信小程序頁面間傳遞數(shù)組對象方法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • 推薦閱讀的js快速判斷IE瀏覽器(兼容IE10與IE11)

    推薦閱讀的js快速判斷IE瀏覽器(兼容IE10與IE11)

    這篇文章主要介紹了推薦閱讀的js快速判斷IE瀏覽器(兼容IE10與IE11),因?yàn)閕e11取消了很多低版本的判斷,很多js都需要修改了,這里簡單介紹下需要的朋友可以參考下
    2015-12-12
  • js實(shí)現(xiàn)網(wǎng)頁定位導(dǎo)航功能

    js實(shí)現(xiàn)網(wǎng)頁定位導(dǎo)航功能

    這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)網(wǎng)頁定位導(dǎo)航功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • 微信小程序自定義組件實(shí)現(xiàn)單選功能

    微信小程序自定義組件實(shí)現(xiàn)單選功能

    這篇文章主要為大家詳細(xì)介紹了微信小程序自定義組件實(shí)現(xiàn)單選功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • html+js實(shí)現(xiàn)簡單的計(jì)算器代碼(加減乘除)

    html+js實(shí)現(xiàn)簡單的計(jì)算器代碼(加減乘除)

    下面小編就為大家?guī)硪黄猦tml+js實(shí)現(xiàn)簡單的計(jì)算器代碼(加減乘除)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-07-07
  • 基于JavaScript寫一款EJS模板引擎

    基于JavaScript寫一款EJS模板引擎

    這篇文章主要介紹了基于JavaScript寫一款EJS模板引擎,基本語法就是定義render函數(shù),接收html字符串,和data參數(shù),下面其他具體介紹,需要的朋友可以參考一下
    2022-02-02
  • [對聯(lián)廣告] JS腳本類

    [對聯(lián)廣告] JS腳本類

    [對聯(lián)廣告] JS腳本類...
    2006-08-08
  • 一文讓你快速了解JavaScript棧

    一文讓你快速了解JavaScript棧

    這篇文章主要介紹了一文讓你快速了解JavaScript棧,棧全稱為堆棧,是一種先進(jìn)后出的的數(shù)據(jù)結(jié)構(gòu),棧中只有兩種基本操作,也就是插入和刪除,也就是入棧和出棧操作,棧只有一端可以進(jìn)行入棧和出棧操作,我們將其稱為棧頂,另一端稱其為棧底
    2022-07-07
  • js 獲取當(dāng)前web應(yīng)用的上下文路徑實(shí)現(xiàn)方法

    js 獲取當(dāng)前web應(yīng)用的上下文路徑實(shí)現(xiàn)方法

    下面小編就為大家?guī)硪黄猨s 獲取當(dāng)前web應(yīng)用的上下文路徑實(shí)現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-08-08

最新評論