1.JS初級主要就兩個作用
一、通過Dom找元素
二簇爆、給元素添加/刪除class
2.Node類型
Node.ELEMENT_NODE === 1 //true,元素節(jié)點
Node.TEXT_NODE === 3 //true浆竭,文本節(jié)點
Node.COMMENT_NODE === 8 //true挪哄,注釋節(jié)點
Node.DOCUMENT_TYPE_NODE === 10 //true吧秕,例:<!DOCTYPE html>
Node.DOCUMENT_FRAGMENT_NODE === 1
假設(shè)我們要判斷一個Node是不是元素,我們可以這樣判斷
if(someNode.nodeType == 1){
console.log("Node is a element");
}
3.tagName
通過getElementsByTagName方法尋找節(jié)點要注意參數(shù)大寫
例:
let brother = li.getElementsByTagName('UL')[0];
上面例子中g(shù)etElementsByTagName這個方法尋找的是li元素的后代迹炼,并按順序返回所有的ul砸彬,返回的是一個數(shù)組,要寫上[0]斯入。
4.getAttribute
當(dāng)給a元素的href屬性寫上別的元素id時想實現(xiàn)錨點跳轉(zhuǎn)時
a.href //這樣獲取href砂碉,瀏覽器會給href加上http協(xié)議
a.getAttribute('href') //這樣獲取的才是href本身
5.target和currentTarget
x.target //x.target是我們操作的那個元素,若a里包含了個span刻两,那操作的就是span
x.currentTarget //x.currentTarget是我們監(jiān)聽的元素增蹭,就是x這個元素
6. 選擇器
let a = document.querySelector('a[href="' + id + '"]') //返回選中的元素
let aTags = document.querySelectorAll('.topNavBar nav>ul>li a') //返回選中的元素數(shù)組
7.children
var c = div.children; //會獲得div下的所有子標簽
var c = div.childNodes; //會獲得div下的所有子標簽加文本標簽
8.console.log調(diào)試大法
出問題了就在每一步console.log,能解決很多問題