亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

原生JS實現幾個常用DOM操作API實例

2019-11-19 17:52:20
字體:
來源:轉載
供稿:網友

原生實現jQuery的sibling方法

<body><span>我是span標簽</span><div>我是一個div</div><h1 id="h1">我是標題</h1><p>我是一個段落</p><script type="text/javascript">//獲取元素的兄弟節點function siblings(o){//參數o就是想取誰的兄弟節點,就把那個元素傳進去var a = [];//定義一個數組,用來存儲o的兄弟元素//previousSibling返回位于相同節點樹層級的前一個元素var p = o.previousSibling;while(p){//先取o的前面的兄弟元素 判斷有沒有上一個兄弟元素,如果有則往下執行,p表示previousSiblingif(p.nodeType === 1){a.push(p);}p = p.previousSibling//最后把上一個節點賦給p}a.reverse();//把順序反轉一下,這樣元素的順序就是按先后的了//nextSibling返回位于相同節點樹層級的下一個節點var n = o.nextSibling;//再取o下面的兄弟元素while(n){//判斷有沒有下一個兄弟結點,n是nextSibling的意思if(n.nodeType === 1){//判斷是否是元素節點a.push(n);}n = n.nextSibling;}return a//最后按從老大到老小的順序,把這一組元素返回}var oH = document.getElementById("h1");console.log(siblings(oH));//[span, div, p, script]</script></body>

原生實現jQuery的class選擇器

//用數組模擬jQuery的class選擇器function getClassName(ParentId,NewClassName){var AllClassElem = ParentId.getElementsByTagName(“*”);var AllClass = [];var i=0;for(var i=0; i<AllClassElem.length; i++){if(AllClassElem[i].className == NewClassName){AllClass.push(AllClassElem[i]);}}return AllClass;


}
//用法:
var PElementId=document.getElementById("bar");
var buttons = getClassName(PElementId,"sco");
//取id="bar"下class="sco"的元素;

getElementsByClassName()

/*** 獲取指定類名的元素對象集合* @param {Object} node 父節點* @param {String} classname 指定類名 * @return {[Object]}目標對象集合*/function getElementsByClassName(node,classname) {//如果瀏覽器支持則直接使用 if (node.getElementsByClassName) {   return node.getElementsByClassName(classname); } else {  return (function getElementsByClass(searchClass,node) {    if ( node == null )     node = document;    var classElements = [],      els = node.getElementsByTagName("*"),      elsLen = els.length,      pattern = new RegExp("(^|//s)"+searchClass+"(//s|$)"), i, j;    for (i = 0, j = 0; i < elsLen; i++) {     if ( pattern.test(els[i].className) ) {       classElements[j] = els[i];       j++;     }    }    return classElements;  })(classname, node); }}

addLoadEvent()

/*** 方便的將在文檔加載后運行的函數添加到window.onload中* @param {function} func 待運行函數*/function addLoadEvent(func){  var oldOnload = window.onload;  //typeof 返回String類型  if(typeof window.onload != 'function'){    window.onload = func;  }else{    window.onload = function(){      oldOnload();      func();    }  }}

addClass()

/*** 為指定元素結點添加新類名* element 元素結點* value 類名*/function addClass(element,value){//如果元素類名為空,直接將value賦值給相應的元素類名  if(!element.className){    element.className = value;  }else{  //否則需要將類名之間用空格隔開    newClassName = element.className;    //多個類名間添加空格    newClassName += ' ';    newClassName += value;    element.className = newClassName;  }}

insertAfter()

/*** 在目標元素結點后面插入新的元素結點* newElement 待插入的新元素結點* targetElement 目標元素結點*/function insertAfter(newElement,targetElement){  var parent = targetElement.parentNode;  if(parent.lastChild == targetElement){    parent.appendChild(newElement);  }else{    parent.insertBefore(newElement,targetElement.nextSibling);  }}

getNextElement()

/*** 獲取下一個元素結點* @param {Object} node 兄結點* @return {Object || null}下一個元素結點或未獲取到*/function getNextElement(node){    var sibNode = node.nextSibling;  if (sibNode.nodeType == 1) {    return node;  }  if (sibNode.nextSibling) {    //遞歸調用    return getNextElement(node.nextSibling);  }  return null;}

以上這篇原生JS實現幾個常用DOM操作API實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
俺也去精品视频在线观看| 欧美性极品xxxx做受| 亚洲欧美日韩视频一区| 欧美精品xxx| 亚洲免费视频在线观看| 成人观看高清在线观看免费| 欧美成人免费全部| 亚洲韩国欧洲国产日产av| 亚洲网站在线看| 国产精品一区二区3区| 久久97久久97精品免视看| 98午夜经典影视| 日韩女优在线播放| 欧美日韩午夜视频在线观看| 日韩在线视频线视频免费网站| 日韩免费看的电影电视剧大全| 91久久夜色精品国产网站| 黄色一区二区在线观看| 国产情人节一区| 欧美高清视频一区二区| 成人激情在线播放| 国产专区精品视频| 亚洲黄色www网站| 日韩欧美成人网| 欧美日韩在线观看视频小说| 久久久久久久久综合| 久久理论片午夜琪琪电影网| 欧美亚洲在线观看| 日韩精品中文在线观看| 国产精品亚洲网站| 欧美日韩在线免费| 日韩专区中文字幕| 日韩av在线网站| 日韩**中文字幕毛片| 日韩欧美aaa| 精品一区二区三区三区| 国产视频丨精品|在线观看| 久久久精品999| 不卡av日日日| 成人观看高清在线观看免费| 亚洲免费高清视频| 日本中文字幕久久看| 性色av一区二区三区红粉影视| 欧美怡红院视频一区二区三区| 久久国产加勒比精品无码| 性欧美长视频免费观看不卡| 欧美巨猛xxxx猛交黑人97人| 91精品国产亚洲| 97在线日本国产| 在线观看精品自拍私拍| 2019中文字幕在线| 91国语精品自产拍在线观看性色| 亚洲色图国产精品| www.欧美视频| 91精品国产色综合| 91美女片黄在线观看游戏| 色噜噜国产精品视频一区二区| 最近2019中文字幕大全第二页| 欧美精品精品精品精品免费| 亚洲国产欧美一区二区丝袜黑人| 欧美成年人视频| 国产精品稀缺呦系列在线| 黑人巨大精品欧美一区二区三区| 欧美一区在线直播| 国产午夜精品视频免费不卡69堂| 最新的欧美黄色| 久久影院免费观看| 国产人妖伪娘一区91| 亚洲一区二区三区香蕉| 国产精品成人一区二区三区吃奶| 精品丝袜一区二区三区| 国产98色在线| 欧美日韩国产精品一区二区三区四区| 欧美日本精品在线| 91精品久久久久久久久久久| 亚洲国产精品中文| 欧美中文在线观看国产| 日韩欧美在线免费观看| 亚洲色图偷窥自拍| 欧美性xxxx极品hd欧美风情| 国产精品成久久久久三级| 黑人巨大精品欧美一区二区三区| 一区二区三区国产在线观看| 亚洲综合国产精品| 久久男人av资源网站| 91精品视频观看| 亚洲电影免费观看| 成人高h视频在线| 日韩中文字幕国产精品| 亚洲精品一区二区网址| 亚洲精品色婷婷福利天堂| 日韩成人中文字幕| 国产成人综合一区二区三区| 欧美激情2020午夜免费观看| 亚洲国产精品高清久久久| 亚洲一区二区三区四区视频| 日韩电影中文字幕一区| 亚洲自拍av在线| 中文字幕久久亚洲| 日韩av影片在线观看| 美女精品久久久| 亚洲无限av看| 最新国产精品拍自在线播放| 成人在线视频网| 成人啪啪免费看| 成人h片在线播放免费网站| 久久久久久香蕉网| 久久久伊人日本| 色无极亚洲影院| 色综合久久久久久中文网| 中文字幕亚洲二区| 97久久伊人激情网| 2018日韩中文字幕| 一本色道久久88综合日韩精品| 国产综合视频在线观看| 中文字幕亚洲色图| 中文综合在线观看| 欧美日韩国产va另类| 高清欧美一区二区三区| 国产va免费精品高清在线| 中文字幕av日韩| 欧美成人午夜免费视在线看片| 久久精品国产v日韩v亚洲| 亚洲精品丝袜日韩| 欧美国产日韩一区二区三区| 91热福利电影| 久久久精品国产网站| 日韩欧美在线一区| 97av在线播放| 国产亚洲激情在线| 欧美极品少妇xxxxx| 亚洲成人国产精品| 亚洲欧美日韩精品久久奇米色影视| 久久99视频精品| 亚洲欧洲一区二区三区在线观看| 最新69国产成人精品视频免费| 久久久久中文字幕2018| 国产91精品久久久久久| 成人黄色短视频在线观看| 国产小视频国产精品| 久久久999国产精品| 91欧美精品成人综合在线观看| 最近免费中文字幕视频2019| 另类专区欧美制服同性| 51午夜精品视频| 久久精品久久久久久国产 免费| 久久久精品国产一区二区| 亚洲欧美日韩第一区| 国产精品白丝jk喷水视频一区| 欧美精品成人在线| 欧美日韩国产成人在线观看| 国产精品va在线播放我和闺蜜| 亚洲欧美国产日韩天堂区| 青青在线视频一区二区三区| 精品亚洲男同gayvideo网站| 亚洲精品xxx| 91精品国产91久久久久久| 国产色综合天天综合网| 国产精品视频网址| 91精品久久久久久久久久| 国产一区二区丝袜高跟鞋图片| 成人中文字幕+乱码+中文字幕| 亚洲国产美女精品久久久久∴| 亚洲欧美一区二区三区四区|