如果要在頁面中動(dòng)態(tài)修改css全局樣式,例如將頁面所有字體顏色改為紅色
通過css可以這樣實(shí)現(xiàn)
*{color:red;}
而如果通過js,利用頁面中的按鈕修改所有元素樣式,即通過js點(diǎn)擊按鈕動(dòng)態(tài)修改頁面中所有元素樣式字體顏色為紅色,應(yīng)如何實(shí)現(xiàn)
閉關(guān)修行中......
我只能想到這個(gè)方法。
Array.prototype.slice.call(document.all).forEach(function (ele) {
ele.style.color = 'red';
});
用css樣式相關(guān)的接口 stylesheet.insertRule
或者stylesheet.addRule
這兩個(gè)都可以動(dòng)態(tài)插入css樣式 兼容性還可以 ie9+
比如
// https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/insertRule
myStyle.insertRule("#blanc { color: white }", 0);
需要?jiǎng)h除的時(shí)候還有deleteRule
和removeRule
兩個(gè)方法 可以查一下相關(guān)資料
[].forEach.call(document.querySelectorAll('*'),function(a){
a.style.color = 'red';
})