ชื่อคลาสใช้เป็น selector หนึ่งใน HTML ซึ่งช่วยในการกำหนดค่าบางอย่างให้กับองค์ประกอบของattributes การใช้ document.getElementById () เป็น method ที่จะใช้ในการส่งกลับองค์ประกอบในเนื้อหาหรือเอกสารเว็บที่มี attribute เป็น "id" ทำให้แอตทริบิวต์ "className" สามารถใช้ในการเปลี่ยน / ผนวกเข้าด้วยกัน สรุปคือเราจะใช้เมธอด document.getElementById () ของjJavaScript เพื่อใช้ในการระบุตำแน่งของคลาสที่เราจะเปลี่ยน นั้นแสดงว่า ใน Element นั้น ต้องมีทั้ง id และ คลาส อยู่ด้วย
รูปแบบ syntax การใช้งานดังนี้
document.getElementById ('myElement'). className = "myclass";
ในตัวอย่างโค้ดนี้เราจะเปลี่ยนคลาสของปุ่มจาก "default" เป็น "changeClass" โดยใช้เหตุการณ์ onclick ซึ่งจะเปลี่ยนสีพื้นหลังของปุ่มจากสีแดง เป็น สีเขียว ดังนี้
<!DOCTYPE html>
<html>
<head>
<title>Change an element class with javascript</title>
<style type="text/css">
.default{
background-color: red;
}
.changedClass{
background-color: green;
}
#myPara{
margin-top: 20px;
}
#myButton{
padding: 10px;
}
body {
text-align:center;
}
h1 {
color:navy;
}
</style>
<script type="text/javascript">
function changeClass() {
document.getElementById('myButton').className = "changedClass";
var button_class = document.getElementById('myButton').className;
document.getElementById('myPara').innerHTML = "New class name: "
+ button_class;
}
</script>
</head>
<body>
<h1>Mindphp</h1>
<h2>Chenge class name of element</h2>
<button class="default" onclick="changeClass()"
id="myButton">Click Here!</button><br>
<p id="myPara">Old class name: default</p>
</body>
</html>
ผลลัพธ์ที่ได่้เมื่อเปิดกับเบราเซอร์ดังนี้
เมื่อเราคลิกปุ่ม
จากผลลัพธ์คือก่อนเราจะกดปุ่มนั้นร ที่ปุ่มมีคลาสชื่อว่า default ซึ่งกำหนด CSS ให้แสดงสีแดง และจากกดปุ่มแล้ว คลาสจากเปลี่ยนไปจาก default เป็น changedClass ซึ่งกำหนด css เป็นสีเขียนครับ หวังว่าจะเข้าใจและมีประโยช์ต่อผู้อ่านสามารถนำไปประยุกต์ต่อได้น่ะครับ