[英]Can I search and replace colours in a CSS file when a page loads?
我想做的是在CSS文檔中搜索由十六進制值標識的特定顏色的所有實例,然后用新的十六進制值替換所有這些實例。 然后, 在更改顏色之后 ,將CSS應用於頁面。
實際上,CSS文檔只是一個文本文件,因此,肯定有一種在將其提供給瀏覽器之前對其進行捕獲並進行一些基於文本的搜索和替換的方法。 查找特定的十六進制代碼,然后用其他實例替換所有實例。
那怎么辦?
您可以執行以下操作:
function changeColor(oldColor, newColor) {
var all = document.getElementsByTagName('*');
Array.prototype.forEach.call(all, function(element){
if (element.style.background === oldColor) {
element.style.background = newColor;
}
})
}
這樣,您就可以遍歷頁面上的每個元素,檢查它是否具有舊顏色,然后,將其更改為新顏色。
首先,您的代碼中存在一些錯誤。
我已經制作了JSFIDDLE
function changeColor(color) {
var a = document.getElementById('coloredThing');
a.style.background = color;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.