原生JS實現增加刪除class(addClass,removeClass,toggleClass)


<!DOCTYPE html>
<html>
<head>
<style type="text/css">  
    .night-mode{  
        background:#383838;  
        color:#888888;
    }  
</style>  
  
<script type="text/javascript">
//判斷樣式是否存在 function hasClass(ele, cls) { return ele.className.match(new RegExp("(\\s|^)" + cls + "(\\s|$)")); } //為指定的dom元素添加樣式 function addClass(ele, cls) { if (!this.hasClass(ele, cls)) ele.className += " " + cls; } //刪除指定dom元素的樣式 function removeClass(ele, cls) { if (hasClass(ele, cls)) { var reg = new RegExp("(\\s|^)" + cls + "(\\s|$)"); ele.className = ele.className.replace(reg, " "); } } //如果存在(不存在),就刪除(添加)一個樣式 function toggleClass(ele,cls){ if(hasClass(ele,cls)){ removeClass(ele, cls); }else{ addClass(ele, cls); } } //調用 function toggleClassTest(){ var ele = document. getElementsByTagName('body')[0]; toggleClass(ele,"night-mode"); } </script> </head> <body> <div style = "width:250px;height:100px;"> <p>這是一段文字 </p> <p>這是一段文字 </p> <p>這是一段文字 </p> <p>這是一段文字 </p> <p>這是一段文字 </p> <p>這是一段文字 </p> <p>這是一段文字 </p> <p>這是一段文字 </p> <p>這是一段文字 </p> <p>這是一段文字 </p> <p>這是一段文字 </p> <p>這是一段文字 </p> <p>這是一段文字 </p> <p>這是一段文字 </p> <p>這是一段文字 </p> </div> <input type = "button" value = "變黑" onclick = "toggleClassTest();" /> </body> </html>

 

用此方法,可實現夜間模式等功能!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM