在特定条件下使用JavaScript更新所有HTML项目的文本颜色
我正在尝试使用Javascript更新html文档中的所有黑色文本 见下文:在特定条件下使用JavaScript更新所有HTML项目的文本颜色,javascript,Javascript,我正在尝试使用Javascript更新html文档中的所有黑色文本 见下文: const h = document.querySelector('html'); h.style.backgroundColor = '#23272a'; var all = document.getElementsByTagName("*"); for (var i=0, max=all.length; i < max; i++) { if (all[i].style.c
const h = document.querySelector('html');
h.style.backgroundColor = '#23272a';
var all = document.getElementsByTagName("*");
for (var i=0, max=all.length; i < max; i++) {
if (all[i].style.color == 'rgb(0, 0, 0)') {
all[i].style.color = "#ffffff";
}
}
const h=document.querySelector('html');
h、 style.backgroundColor='#23272a';
var all=document.getElementsByTagName(“*”);
对于(变量i=0,max=all.length;i
第一部分更新html背景色效果良好。但是,更新文本颜色的第二部分不起作用。这里出了什么问题?使用
文档。queryselector all
将选择所有HTML元素
然后通过循环,它将更新所有元素,并在其上放置内联样式
const h=document.querySelector('html');
h、 style.backgroundColor='#23272a';
const all=document.queryselectoral(“*”);
all.forEach(q=>q.style.color='#fff')
第一段
第二段
第三段
第四段
使用文档。querySelectorAll
将选择所有HTML元素
然后通过循环,它将更新所有元素,并在其上放置内联样式
const h=document.querySelector('html');
h、 style.backgroundColor='#23272a';
const all=document.queryselectoral(“*”);
all.forEach(q=>q.style.color='#fff')
第一段
第二段
第三段
第四段
您需要
在应用活动样式表并解析这些值可能包含的任何基本计算之后,getComputedStyle()方法返回一个包含元素所有CSS属性值的对象。单个CSS属性值通过对象提供的API访问,或者通过CSS属性名称索引访问
constAllegements=[…document.getElementsByTagName(“*”);
等位基因。forEach(el=>{
if(getComputedStyle(el).color==“rgb(0,0,0)”){
el.style.color=“#ff0000”;
}
})
- 再次
- 再次
- 再次
- 再次
- 再次
- 再次
您需要
在应用活动样式表并解析这些值可能包含的任何基本计算之后,getComputedStyle()方法返回一个包含元素所有CSS属性值的对象。单个CSS属性值通过对象提供的API访问,或者通过CSS属性名称索引访问
constAllegements=[…document.getElementsByTagName(“*”);
等位基因。forEach(el=>{
if(getComputedStyle(el).color==“rgb(0,0,0)”){
el.style.color=“#ff0000”;
}
})
- 再次
- 再次
- 再次
- 再次
- 再次
- 再次
代码的第二部分仅检查style
属性中的颜色:rgb(0,0,0)
//让我们以段落为例
var all=document.getElementsByTagName(“p”);
对于(变量i=0,max=all.length;i
.panel{
背景色:#474b4e;
填充物:3px 5px;
}
布莱克先生{
颜色:rgb(0,0,0);
}
rgb(0,0,0)
黑色
违约
代码的第二部分仅检查样式
属性中的颜色:rgb(0,0,0)
//让我们以段落为例
var all=document.getElementsByTagName(“p”);
对于(变量i=0,max=all.length;i
.panel{
背景色:#474b4e;
填充物:3px 5px;
}
布莱克先生{
颜色:rgb(0,0,0);
}
rgb(0,0,0)
黑色
违约
请显示您的HTML和CSS<代码>样式。颜色很可能什么都不是,因为颜色是一种计算样式——在假设它是类似于“rgb(0,0,0)”的字符串之前,请尝试打印它。你只是想把黑文字变成白文字吗?顺便说一句,我将对正文
,而不是html
,应用背景色。请显示您的html和CSS<代码>样式。颜色很可能什么都不是,因为颜色是一种计算样式——在假设它是类似于“rgb(0,0,0)”的字符串之前,请尝试打印它。你只是想把黑文字变成白文字吗?另一方面,我会对body
应用背景色,而不是html
。James,这对于更新文档中的所有文本非常有用。但是,我尝试只针对当前为黑色的文本,无论是默认设置还是自定义设置。例如,如果一个p有color:rgb(0,0,1)
,它就不应该受到影响。@cappycap如果是这种情况,那么你需要遍历所有文本元素,并设置一个条件,如果他们的style.color==“rgb(0,0,1)”,那么我们将更新它,James,这对于更新整个文档中的所有文本非常有用。但是,我尝试只针对当前为黑色的文本,无论是默认设置还是自定义设置。例如,如果一个p有color:rgb(0,0,1)
,它就不应该受到影响。@cappycap如果是这种情况,那么你需要遍历所有的文本元素,并设置一个条件,如果他们的style.color==“rgb(0,0,1)”,那么我们将更新它