Dom是Document Object Model的縮寫,意思是文檔對(duì)象模型。DOM是一種與瀏覽器、平臺(tái)、語(yǔ)言無(wú)關(guān)的接口,使用該接口可以輕松訪問(wèn)頁(yè)面中所有的標(biāo)準(zhǔn)組件。
DOM操作可以分為三個(gè)方面即DOM Core(核心)、HTM-DOM和CSS-DOM。
jQuery DOM 元素方法
函數(shù) 描述 .get() 獲得由選擇器指定的 DOM 元素。 .index() 返回指定元素相對(duì)于其他指定元素的 index 位置。 .size() 返回被 jQuery 選擇器匹配的元素的數(shù)量。 .toArray() 以數(shù)組的形式返回 jQuery 選擇器匹配的元素。
1.attr() .removeAttr()
.attr() 方法可以傳入一個(gè)名值對(duì)的參數(shù),也可以傳入一個(gè)包含2個(gè)以上名值對(duì)的對(duì)象參數(shù),例如:
.attr('src','images/a.jpg');
.attr({ rel:'www', id:'zz', title:'some', some:'111' });
當(dāng)然,也可以移除一個(gè)或者一個(gè)以上屬性.removeAttr('id rel');
2.prop()
該方法可以取得屬性值
傳入想要取得的值的屬性名(字符串),例如.prop('id');
設(shè)置id的值(修改DOM本身存在的屬性比如a標(biāo)簽的href,id)
.prop('id','otherid');
3.val()
這個(gè)方法經(jīng)常用于取得表單控件的值
4.insertBefore() .insertAfter() .prependTo() .appendTo()
.insertBefore()在現(xiàn)有元素外部、之前添加內(nèi)容;(反向操作 .before())
.insertAfter()在現(xiàn)有元素外部、之后添加內(nèi)容;(反向操作 .after())
.prependTo()在現(xiàn)有元素內(nèi)部、之前添加內(nèi)容;(反向操作 .prepend())
.appendTo()在現(xiàn)有元素內(nèi)部、之后添加內(nèi)容;(反向操作 .append())
5.clone()
該方法可以復(fù)制拷貝元素,如果需要復(fù)制出來(lái)的元素繼承其他事件,需要傳入一個(gè)布爾值作為參數(shù),.clone(true)
6.wrap() .wrapAll() .wrapInner()
.wrap()和.wrapInner()可以理解成相對(duì)的,.wrap()是包在元素外面一層,而.wrapWith()是包在元素里面一層,
而.wrapAll()是在所有匹配到的元素外圍包裹
7.html() .text() .replaceWith() .replaceAll()
.html()可以傳入文本或者DOM節(jié)點(diǎn);
.text()只能讀取或者替換文本;
.replaceWith() 把。。。替換“成”。。。;
.replaceAll() 把。。。替換“給”。。。
8.empty()
移除元素
9.detach() .remove()
這2個(gè)方法有點(diǎn)相似,都不會(huì)把匹配的元素從jQuery對(duì)象中刪除,但是還是有所區(qū)別:
.detach() 所有綁定的事件、附加的數(shù)據(jù)等都會(huì)保留下來(lái)
.remove() 除了這個(gè)元素本身得以保留之外,其他的比如
綁定的事件,附加的數(shù)據(jù)等都會(huì)被移除。