您好,登錄后才能下訂單哦!
本文實例講述了JS選取DOM元素常見操作方法。分享給大家供大家參考,具體如下:
JS選取DOM元素的方法
注意:原生JS選取DOM元素比使用jQuery類庫選取要快很多
1、通過ID選取元素
document.getElementById('myid');
2、通過CLASS選取元素
document.getElementsByClassName('myclass')[0];
3、通過標簽選取元素
document.getElementsByTagName('mydiv')[0];
4、通過NAME屬性選取元素(常用于表單)
document.getElementsByName('myname')[0];
JS修改CSS樣式
document.getElementById('myid').style.display = 'none';
JS修改CLASS屬性
document.getElementById('myid').className = 'active';
如果有多個CLASS屬性,即用空格隔開
document.getElementById('myid').className = 'active div-1';
移除該元素上的所有CLASS
document.getElementById('myid').className = '';
注意:使用classList會優于使用className
document.getElementById('myid').classList.item(0);//item為類名的索引 document.getElementById('myid').classList.length;//只讀屬性 document.getElementById('myid').classList.add('newClass');//添加class document.getElementById('myid').classList.remove('newClass');//移除class document.getElementById('myid').classList.toggle('newClass');//切換,有則移除,沒有則添加 document.getElementById('myid').classList.contains('newClass');//判斷是否存在該class
補充:add
和remove
方法不允許鏈式操作,因為返回的都是undefined,其次,也不允許同時添加或刪除多個class,可以自行擴展一下
DOMTokenList.prototype.adds = function(tokens){ tokens.split(' ').forEach(function(token){ this.add(token); }).bind(this)); return this; }; var clList = document.body.classList; clList.adds('a b c').toString(); //a b c
JS修改文本
document.getElementById('myid').innerHTML = '123';
JS創建元素并向其中追加文本
var newdiv = document.createElement('div'); var newtext = document.createTextNode('123'); newdiv.appendChild(newtext); document.body.appendChild(newdiv);
同理:removeChild()
移除節點,并返回節點
cloneNode()
復制節點
insertBefore()
插入節點(父節點內容的最前面)
注意:insertBefore()
有兩個參數,第一個是插入的節點,第二個是插入的位置
例子:
var list = document.getElementById('myList'); list.insertBefore(newItem,list.childNodes[1]); //插入新節點newItem到list的第二個子節點
JS返回所有子節點對象childNodes
var mylist = document.getElementById('myid'); for(var i=0,i<mylist.childNodes.length;i++){ console.log(mylist.childNodes[i]); }
firstChild返回第一個子節點
lastChild返回最后一個子節點
parentNode返回父節點對象
nextSibling返回下一個兄弟節點對象
previousSibling返回前一個兄弟節點對象
nodeName返回節點的HTML標記名稱
更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript操作DOM技巧總結》、《JavaScript頁面元素操作技巧總結》、《JavaScript事件相關操作與技巧大全》、《JavaScript查找算法技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript錯誤與調試技巧總結》
希望本文所述對大家JavaScript程序設計有所幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。