javascript dom 學習筆記 第九章:實現給某個元素添加加新的class的值的函數!

來源:互聯網
上載者:User
function addClass(element,value){if (!element.className){element.className = value;}else{newClassName = element.className;newClassName += "";newClassName += value;element.className = newClassName;}}

函數解釋:

如果當前元素沒有class,或者說是class值為空白為null的時候,那就直接添加一個。

否則,如果已經有了class,那麼就在原來的class後面追加一個 。

 

 

由於 js的 className 設定某個元素的class屬性值將被替換掉,而不是追加,所以就有了這個函數來實現這個功能 

也可以用setAttribute()方法來實現添加class: elem.setAttribute("class","intro");

用法:addClass(element,value);

如:addClass(links[i],"intro");

 

20120811添加備忘:

不想用這個函數的話,也可以直接這樣寫:

links[i] += " intro";  //注意intro前面要有一個空格。

這樣寫,如果當前元素有className值的話,就追加一個,顯示效果如下:

<li class=" last intro"> </li>

沒有className的話,就添加一個,這樣寫的話前面多了個空格,效果如下:

<li class=" intro"> </li><li class=" intro"> </li><li class=" intro"> </li><li class=" intro"> </li>

  

個人總結:在需要添加class比較多的情況下建議用addClass函數,少的情況下還是直接 elem += " class" 吧,就那麼一兩個,沒必要再去浪費一個函數。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.