主頁 > 知識庫 > 使用HTML5里的classList操作CSS類

使用HTML5里的classList操作CSS類

熱門標簽:硅谷的囚徒呼叫中心 網(wǎng)站建設(shè) 美圖手機 百度競價點擊價格的計算公式 阿里云 檢查注冊表項 使用U盤裝系統(tǒng) 智能手機

在JavaScript和JavaScript工具庫里征戰(zhàn)多年,我經(jīng)常有這樣的遐想:什么時候現(xiàn)代瀏覽器里能提供一些輔助方法和類庫,替代那些JavaScript工具庫,比如jQuery,讓我們用瀏覽器原生的方法替代它們。我知道瀏覽器必定會向這個方向改進,但這個進化過程不會很迅速,而且各種瀏覽器需要共同做這樣的革新,火狐瀏覽器、谷歌瀏覽器、特別是IE,只有當這些主流瀏覽器都具備了這樣的功能,我們的愿望才算真正的實現(xiàn)。好消息是,其中有一個這樣的功能已經(jīng)被加入到了HTML5 API里:classList。

在HTML5 API里,頁面DOM里的每個節(jié)點上都有一個classList對象,程序員可以使用里面的方法新增、刪除、修改節(jié)點上的CSS類。使用classList,程序員還可以用它來判斷某個節(jié)點是否被賦予了某個CSS類。

Element.classList

這個classList對象里有很多有用的方法:

XML/HTML Code復制內(nèi)容到剪貼板
  1. {   
  2.  length: {number}, /* # of class on this element */   
  3.  add: function() { [native code] },   
  4.  contains: function() { [native code] },   
  5.  item: function() { [native code] }, /* by index */   
  6.  remove: function() { [native code] },   
  7.  toggle: function() { [native code] }   
  8. }   
  9.   

正如你上面看到的,Element.classList類很小,但里面的每個方法都很有用。

新增CSS類

使用add方法,你可以往頁面元素是新增一個或多個css類:

myDiv.classList.add('myCssClass');

刪除一個CSS類

使用remove方法,你可以刪除單個CSS類:

myDiv.classList.remove('myCssClass');

你可以在這個方法里一次傳入多個類名,用空格分開,但執(zhí)行的結(jié)果很有可能不是你預期的。

反轉(zhuǎn)CSS類的有無

myDiv.classList.toggle('myCssClass'); //現(xiàn)在是增加
myDiv.classList.toggle('myCssClass'); //現(xiàn)在是刪除

這個方法的作用就是,當myDiv元素上沒有這個CSS類時,它就新增這個CSS類;如果myDiv元素已經(jīng)有了這個CSS類,它就是刪除它。就是反轉(zhuǎn)操作。

檢查是否含有某個CSS類

myDiv.classList.contains('myCssClass'); //returns true or false

目前所有的現(xiàn)代瀏覽器(火狐瀏覽器,谷歌瀏覽器等)都支持這個classList類,所以,相信新型的javaScript類庫里都會使用classList類來操作頁面CSS類,而不需像以前一樣去分析元素節(jié)點的class屬性!

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:通遼 黃山 山南 賀州 懷化 湘潭 煙臺 湖北

巨人網(wǎng)絡(luò)通訊聲明:本文標題《使用HTML5里的classList操作CSS類》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266