摘要:節(jié)點(diǎn)有一個(gè)屬性用來(lái)表示當(dāng)前元素的類型,它是一個(gè)整數(shù),元素,屬性,文本結(jié)構(gòu)兩個(gè)節(jié)點(diǎn)之間可能存在哪些關(guān)系以及如何在節(jié)點(diǎn)之間任意移動(dòng)。但是和是符合標(biāo)準(zhǔn)的,可以說(shuō)比較通用。
DOM manipulation
DOM節(jié)點(diǎn)(Node)通常對(duì)應(yīng)于一個(gè)標(biāo)簽,一個(gè)文本,或者一個(gè)HTML屬性。DOM節(jié)點(diǎn)有一個(gè)nodeType屬性用來(lái)表示當(dāng)前元素的類型,它是一個(gè)整數(shù):
Element,元素
Attribute,屬性
Text,文本
DOM結(jié)構(gòu) —— 兩個(gè)節(jié)點(diǎn)之間可能存在哪些關(guān)系以及如何在節(jié)點(diǎn)之間任意移動(dòng)。
當(dāng)前對(duì)象為node
返回父節(jié)點(diǎn):node.parentNode, node.parendElement,
返回所有子節(jié)點(diǎn):node.childNodes(包含文本節(jié)點(diǎn)及標(biāo)簽節(jié)點(diǎn)),node.children
返回第一個(gè)子節(jié)點(diǎn):node.firstChild
返回最后一個(gè)子節(jié)點(diǎn): node.lastChild
返回同屬上一個(gè)子節(jié)點(diǎn):node.nextSibling
返回同屬下一個(gè)子節(jié)點(diǎn):node.previousSibling
parentNode和parentElement功能一樣,childNodes和children功能一樣。但是parentNode和childNodes是符合W3C標(biāo)準(zhǔn)的,可以說(shuō)比較通用。而另外兩個(gè)只是IE支持,不是標(biāo)準(zhǔn),F(xiàn)irefox就不支持 ,所以大家只要記得有parentElement和children就行了
移位 -> http://www.cnblogs.com/QingFl...
DOM操作 ——如何添加、移除、移動(dòng)、復(fù)制、創(chuàng)建和查找節(jié)點(diǎn)等。
// 添加、刪除子元素
ele.appendChild(el);
ele.removeChild(el);
// 替換子元素
ele.replaceChild(el1, el2);
// 插入子元素
parentElement.insertBefore(newElement, referenceElement);
//克隆元素
ele.cloneNode(true) //該參數(shù)指示被復(fù)制的節(jié)點(diǎn)是否包括原節(jié)點(diǎn)的所有屬性和子節(jié)點(diǎn)
childNodes vs children 返回所有子節(jié)點(diǎn):
node.childNodes(包含文本節(jié)點(diǎn)及標(biāo)簽節(jié)點(diǎn)),
node.children
Element.children returns only element children(元素節(jié)點(diǎn)), while Node.childNodes returns all node children. Note that elements are nodes, so both are available on elements.(node節(jié)點(diǎn)包括element 節(jié)點(diǎn))
getElementsByClassName(H5) compatible version
function getElementsByClassName(node, classname) { if (node.getElementsByClassName) { return node.getElementsByClassName(classname); } else { var results = new Array(); var elems = node.getElementsByTagName("*"); for (var i = 0; i < elems.length; i++) { if (elems[i].className.indexOf(classname) != -1) { result.push(elems[i]); } } return results; } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/89102.html
摘要:為了避免不同項(xiàng)目之間進(jìn)行復(fù)制粘貼,可以將這些常用的函數(shù)封裝到一起并發(fā)布包。目前所包含模塊已達(dá)三百個(gè),基本可以滿足前端的日常工發(fā)需求。二使用打包工具該項(xiàng)目自帶打包工具,可以通過(guò)配置文件或命令行掃描源碼自動(dòng)生成項(xiàng)目專用的工具庫(kù)。 前言 在業(yè)務(wù)開發(fā)過(guò)程中,我們經(jīng)常會(huì)重復(fù)使用日期格式化、cookie 操作、模板、瀏覽器判斷、類型判斷等功能。為了避免不同項(xiàng)目之間進(jìn)行復(fù)制粘貼,可以將這些常用的函數(shù)...
摘要: Awesome JavaScript A collection of awesome browser-side JavaScript libraries, resources and shiny things. Awesome JavaScript Package Managers Loaders Testing Frameworks QA Tools MVC Framew...
摘要:原文地址項(xiàng)目地址關(guān)于中使用效果,官網(wǎng)上的解釋如下當(dāng)元素插入到樹或者從樹中移除的時(shí)候,屬性提供變換的效果,可以使用來(lái)定義變化效果,也可以使用來(lái)定義首先第一個(gè)函數(shù)是將元素插入,函數(shù)實(shí)現(xiàn)調(diào)用了實(shí)現(xiàn)代碼如下寫的好的代碼就是文檔,從注釋和命名上就 src/transition 原文地址項(xiàng)目地址 關(guān)于 vue 中使用 transition 效果,官網(wǎng)上的解釋如下: With Vue.js’ tra...
摘要:對(duì)于那些老網(wǎng)站或者老項(xiàng)目來(lái)說(shuō)全盤改造成并不現(xiàn)實(shí),于是就有了局部頁(yè)面刷新這個(gè)解決方案。如果不知道局部頁(yè)面刷新是何物請(qǐng)看這里,這里和這里。但實(shí)際上,第一次后退無(wú)法還原的內(nèi)容陷阱,第二次后退頁(yè)面刷新了一切恢復(fù)最初的樣子。 ajax在現(xiàn)代網(wǎng)站已經(jīng)得到非常普遍地應(yīng)用,主要的好處大家都知道(異步加載數(shù)據(jù),不用刷新整個(gè)瀏覽器,更小的數(shù)據(jù)傳輸尺寸)。對(duì)于那些老網(wǎng)站或者老項(xiàng)目來(lái)說(shuō)全盤改造成ajax并不現(xiàn)...
摘要:所有瀏覽器瀏覽器不支持安卓中中有屬性安卓中中有屬性有屬性的有屬性的所以在不需要的瀏覽器會(huì)直接掉,不會(huì)執(zhí)行下面的所有代碼。見(jiàn)源碼行,可以看出在響應(yīng)無(wú)操作后,則觸發(fā)。 其實(shí)一直就想花些時(shí)間讀一讀那些優(yōu)秀的開源庫(kù),今天終于下了決定打算死磕下自己,2016年每個(gè)月讀2-3個(gè)優(yōu)秀的開源庫(kù),把源碼精彩的地方和自己心得分享給大家。 目錄 (一)背景(二)源碼解析(三)Zepto 點(diǎn)擊穿透與 Fast...
閱讀 1367·2021-09-10 10:51
閱讀 2834·2019-08-30 15:54
閱讀 3375·2019-08-29 17:11
閱讀 935·2019-08-29 16:44
閱讀 1396·2019-08-29 13:47
閱讀 1094·2019-08-29 13:47
閱讀 1493·2019-08-29 12:23
閱讀 1048·2019-08-28 18:18