javascript基礎(class 類屬性的操作(增,刪,改,查))(四十五)
1.類屬性的操作
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
.b1{
width: 100px;
height: 100px;
background-color: red;
}
.b2{
width: 200px;
height: 200px;
background-color: yellow;
}
</style>
<script type="text/javascript">
window.onload = function(){
/*
* 點選按鈕,修改div的樣式
*/
//獲取box1
var box1 = document.getElementById("box1");
//為btn01繫結一個單擊響應函式
var btn01 = document.getElementById("btn01");
btn01.onclick = function(){
//修改box1的樣式
/*box1.style.width = "200px";
box1.style.height = "200px";
box1.style.backgroundColor = "yellow";*/
/*
* 我們可以通過修改元素的class來間接的修改元素的樣式,
* 這樣我們可以同時修改多個樣式,並且提升瀏覽器渲染頁面的效能
* 修改class也可以使行為和表現分離,方便後期維護
*/
//修改box1的class為b2
//box1.className += " b2";
//向box1中新增b2這個class
//addClass(box1 , "b2");
//檢查box1中是否含有b2這個class
//alert(box1.className == "b2") ;
//建立一個正規表示式
/*var reg = /\bb2\b/;
alert(reg.test(box1.className));*/
//alert(hasClass(box1,"b3"));
//removeClass(box1,"b2");
toggleClass(box1,"b2");
};
};
/*
* 定義一個專門用來向元素中新增class的函式
* 引數:
* obj 要新增class屬性的物件
* cn 要新增的class的屬性值
*/
function addClass(obj , cn){
//如果元素中有該class則不新增,沒有才新增
if(!hasClass(obj , cn)){
obj.className += " " + cn;
}
}
/*
* 建立一個函式檢查一個元素中是否含有指定的class
* 如果有,則返回true。否則返回false
*/
function hasClass(obj , cn){
//建立正規表示式
var reg = new RegExp("\\b"+cn+"\\b");
//返回檢查結果
return reg.test(obj.className);
}
/*
* 用來從指定元素中刪除class值的方法
*/
function removeClass(obj , cn){
//要刪除一個class,就是將這個class替換為一個空串
//建立正規表示式
var reg = new RegExp("\\b"+cn+"\\b" , "g");
//判斷obj中是否含有這個class
if(reg.test(obj.className)){
//將內容替換為空串
obj.className = obj.className.replace(reg , "");
}
}
/*
* 用來切換元素的class的方法
* 如果元素中含有該class,則刪除
* 如果元素中沒有該class,則新增
*
*/
function toggleClass(obj , cn){
//檢查obj中是否含有cn
if(hasClass(obj , cn)){
//有該class,則刪除
removeClass(obj , cn);
}else{
//沒有該class,則新增
addClass(obj , cn);
}
}
</script>
</head>
<body>
<button id="btn01">點我一下</button>
<br /><br />
<div id="box1" class="b1 b2 b3 b4 b2 b2 b2"></div>
</body>
</html>
相關文章
- MySQL基礎操作(增刪改查)MySql
- iOS操作屬性列表plist(增刪改查)iOS
- SQL 基礎增、刪、改、查SQL
- JavaScript 刪除class屬性JavaScript
- MySQL表的增刪改查(基礎)MySql
- MongoDB增刪改查操作MongoDB
- javascript基礎(dom增刪改)(二十九)JavaScript
- PHP操作MongoDB(增刪改查)PHPMongoDB
- MongoDB工具類:java操作對檔案的增刪查改MongoDBJava
- mysql資料增刪改查操作MySql
- JS字串操作之增刪改查JS字串
- JavaScript表格增刪改查詳解JavaScript
- JS基礎_dom增刪改JS
- 資料庫操作增刪改查模糊查資料庫
- 用thinkphp進行增刪改查的操作PHP
- 使用mybatis開發的增刪改查操作MyBatis
- Java物件轉JSON時如何動態的增刪改查屬性Java物件JSON
- class屬性的新增刪除
- jquery基本操作增刪改查有哪些?jQuery
- JavaAPI操作MongoDB--基本增刪改查JavaAPIMongoDB
- MyBatis框架搭建及增刪改查操作MyBatis框架
- 增刪改查
- 使用Chatgpt編寫的PHP資料庫pdo操作類(增刪改查)ChatGPTPHP資料庫
- Java實現簡單的增刪改查操作Java
- 表的建立修改及增刪改查-DML操作
- 自寫的使用PDO對mysql資料庫的增刪改查操作類MySql資料庫
- MongoDB基本增刪改查操作-基於Node.JS驅動MongoDBNode.js
- layui的增刪改查UI
- 列表的增刪改查
- 字典的增刪改查
- redist的增刪改查Redis
- Mybatis的增刪改查MyBatis
- MongoDB的增刪改查MongoDB
- ThinkPHP的增、刪、改、查PHP
- Django基於類的增刪改查,簡單邏輯都不用寫Django
- indexedDB 增刪改查Index
- SQL增刪改查SQL
- mysql增刪改查MySql