真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

使用JavaScript怎么動態(tài)添加和刪除類

本篇文章為大家展示了使用JavaScript怎么動態(tài)添加和刪除類,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

紅河網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站設(shè)計等網(wǎng)站項目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)成立與2013年到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運(yùn)維經(jīng)驗,來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。

首先等到一個 dom 對象(也叫dom元素), 通過document.getElement……的幾種方法得到

如`

let element = document.getElementById("box");

1.通過類名, 獲取類名: el.className, 賦值: el.className = "className" 會覆蓋掉原來的類

2.通過屬性,獲取類名: el.getAttribute("class"); 賦值: el.setAttribute("class", "className1 className2"); 會覆蓋掉原來的類

3.通過屬性節(jié)點(diǎn) attributeNode(性能差一點(diǎn),但能兼容ie,getAttribute() ie 的有些版本不支持 )setAttributeNode() 方法向元素中添加指定的屬性節(jié)點(diǎn)。
如果這個指定的屬性已存在,則此方法會替換它。,獲取類名: getAttributeNode("class").value, 賦值:

let attr = document.createAttribute("class");
attr.nodeValue = "className";
el.setAttributeNode(attr)

4.通過 classList屬性, 獲取類名 el.classList; 追加類名: el.classList.add("className"); 刪除類 : el.calssList.remove("className");

上邊四種方法, classList最靈活,最好好用, 但是不支持 ie9 以下的瀏覽器, 兼容性要差一些

代碼如下:

html


	按鈕1
按鈕2
按鈕3
按鈕4

js代碼, 其中用到了ES6語法(用ES6寫簡潔)

let myEventUtil = {
	// 添加監(jiān)聽事件
	addEvent (element, type, handler) {
		if (element.addEventListener) {
			element.addEventListener(type, handler, false);
		} else if (element.attach){ // ie
			element.attach("on"+ type, handler);
		} else {
			element['on' + type] = handler;
		}
	},
	getTarget (event) {
		let event = event || window.event;
		return event.target || event.srcElement;
	}
}
let my$ = id => document.getElementById(id);

let btnGroup = my$(“btn-group”);
myEventUtil.addEvent(btnGroup, 'on', function (ev) {
	// 給所有的 btn 都移除激活的類 btn-active
	// console.log(this) ==> 是一個dom元素 btnGroup 
	// 可以通過 el.children[i]拿到具體的子元素
	// 拿到子元素了可以通過 el.classList.remove("className") 刪除類
	// el.classList.add("className") 來添加類
	
	// 刪除類
	let len = this.children.length;
	for (let i = 0; i < len; i ++) {
		this.children[i].classList.remove("btn-active");
		// this.children[i].className = "btn"; // 用其中一個就行
	}
	// 添加類, 拿到具體的 btn 給它添加類
	myEventUtil.getTarget(ev).classList.add("btn-active"); 
	// myEventUtil.getTarget(ev).className = "btn"; // 用其中一個就行
});

JavaScript有什么特點(diǎn)

1、js屬于一種解釋性腳本語言;2、在絕大多數(shù)瀏覽器的支持下,js可以在多種平臺下運(yùn)行,擁有著跨平臺特性;3、js屬于一種弱類型腳本語言,對使用的數(shù)據(jù)類型未做出嚴(yán)格的要求,能夠進(jìn)行類型轉(zhuǎn)換,簡單又容易上手;4、js語言安全性高,只能通過瀏覽器實現(xiàn)信息瀏覽或動態(tài)交互,從而有效地防止數(shù)據(jù)的丟失;5、基于對象的腳本語言,js不僅可以創(chuàng)建對象,也能使用現(xiàn)有的對象。

上述內(nèi)容就是使用JavaScript怎么動態(tài)添加和刪除類,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


分享名稱:使用JavaScript怎么動態(tài)添加和刪除類
網(wǎng)站網(wǎng)址:http://weahome.cn/article/pspojd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部