Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Javascript返回CSS颜色元素的值?_Javascript_Html_Css - Fatal编程技术网

如何使用Javascript返回CSS颜色元素的值?

如何使用Javascript返回CSS颜色元素的值?,javascript,html,css,Javascript,Html,Css,我有一个PDF,我通过它创建了一个可以操作的HTML页面。我想根据单一颜色rgb(0、129、162)选择多个标题,因为这似乎是区分标题与文本其余部分的唯一可辨别的方法。在应用颜色的head元素中,有一个样式元素将颜色应用于所有span和div元素 span.cls_022{font-family:Arial,serif;font-size:11.1px;color:rgb(0, 129, 162);font-weight:normal;font-style:normal:text-decora

我有一个PDF,我通过它创建了一个可以操作的HTML页面。我想根据单一颜色rgb(0、129、162)选择多个标题,因为这似乎是区分标题与文本其余部分的唯一可辨别的方法。在应用颜色的head元素中,有一个样式元素将颜色应用于所有span和div元素

span.cls_022{font-family:Arial,serif;font-size:11.1px;color:rgb(0, 129, 162);font-weight:normal;font-style:normal:text-decoration: none}
HTML如下所示:

<div style="left: 72.02px; top: 204.98px; position: absolute">
  <div class="cls_022" style="left: 72.02px; top: 204.98px; position:absolute;">
    <span class="cls_022">Text I'd like to select</span>
  </div>
</div>
这将返回标记中的样式

在dev工具中,我可以看到它有一个颜色属性rgb(0、129、162),这就是我想要用来选择和返回CSS颜色属性的值


有什么想法吗?

这可以实现您想要的:

var elem = document.getElementsByClassName("cls_022")[1];
var cssColor = window.getComputedStyle(elem, null).getPropertyValue("color");
var targetElems=document.queryselectoral(“span.cls_022”);
//forEach(el=>console.log(el));
//console.log(targetElems);//{
if(window.getComputedStyle(el,null).getPropertyValue(“color”)==“rgb(0129162)”){
推送(el);
}
});

//console.log(blueTitles);//这是怎么复制的??我在你建议的答案/问题中没有看到任何重复的javascript@我也不认为这是一个重复的问题。我不想改变样式,我需要通过JS应用逻辑来捕获标题的颜色值。我可以捕获css.text,它不包含颜色值。我重新打开它是因为复制确实是错误的,但不清楚您试图实现什么。若要获取计算样式,请使用
getComputedStyle(element).getPropertyValue(“属性检查”)
,但您想对该值做什么?你要解析页面上的所有元素并检查哪个元素有这个值吗?一定有更好的方法来处理它(比如CSS选择器),但是从你的问题来看,很难说。我想这有点模糊。我试图解析的文档的标题元素带有特定的蓝色。我想选择它们并将它们放入一个数组中。我能想到的唯一方法是创建一个循环来遍历所有元素并逻辑地检查颜色。如果匹配,则推入阵列。这是我第一次尝试真正“解析”任何内容,我甚至不能100%确定我是否正确使用了该术语。@RyanSpeight,如果您不喜欢这种方式,也许您可以提供更多html结构。我应该早点更新,但是,是的,使用window.getComputedStyle确实对我有用。不过现在,我需要弄清楚如何循环遍历所有HTML元素,并将所有具有正确“颜色”属性的元素推送到一个数组中。@Ryan Speight,这是另一个问题,你需要给出你的项目的大图,我指的是更多信息。谢谢@Carr,但你是对的。这是另一个问题,我是在声明中提出的。在我回到论坛寻求帮助之前,我将与之斗争一段时间。@RyanSpeight,我希望这符合您的需要。
var elem = document.getElementsByClassName("cls_022")[1];
var cssColor = window.getComputedStyle(elem, null).getPropertyValue("color");