Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.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 如何将ElementByClass转换为更大的类?_Javascript_Html_Css - Fatal编程技术网

Javascript 如何将ElementByClass转换为更大的类?

Javascript 如何将ElementByClass转换为更大的类?,javascript,html,css,Javascript,Html,Css,我试图用一个按钮功能来改变标题的颜色 我的css: .navbar-brand > a { color: #fff; } 我的js: function myFunction() { document.getElementsByClassName("navbar-brand > a").style.color = "black"; } 页面 感谢您的帮助 /S这里最简单的解决方案是使用document.querySelector。请记住,我假设只有一个元素与CSS选择器

我试图用一个按钮功能来改变标题的颜色

我的css:

.navbar-brand > a {
    color: #fff;
}
我的js:

function myFunction() {
  document.getElementsByClassName("navbar-brand > a").style.color = "black";
}
页面

感谢您的帮助


/S

这里最简单的解决方案是使用
document.querySelector
。请记住,我假设只有一个元素与CSS选择器匹配

document.querySelector('.navbar-brand > a').style.color = 'black';
如果您希望更改多个与您使用的CSS选择器匹配的元素,那么您应该使用
document.querySelectorAll

const uiElements = document.querySelectorAll('.navbar-brand > a');
uiElements.forEach(uiElement => {
  uiElement.style.color = 'black';
});
但是,回到您原来的问题,如果您绝对必须
使用
document.getElementsByClassName
,那么解决方案(同样适用于多个元素)如下所示:

const navbarElements = document.getElementsByClassName('navbar-brand');
navbarElements.forEach(uiElement => {
  uiElement.querySelector('a').style.color = 'black';
});

希望这有帮助

document.querySelector(“.navbar brand>a”).style.cssText=“color:#000;”如果您正在开发一个小型网站,我建议您选择jQuery。您可以通过CDN简单地添加它,只需使用简单的CSS选择器即可获得所需内容。您的代码将变成:$(“.navbar brand>a”).css('color','black')@Jackson
querySelectorAll
与“ES6”无关……请注意,
GetElementsByCassName
querySelectorAll
都返回多个元素,因此必须循环结果。请向坦斯克寻求帮助!selectorAll是狗屎!!:)成功了!非常感谢!第一个解决方案工作得很好,正如您所假设的那样,我只有一个CSS选择器元素。但我想对我的菜单做一些相同的元素,我尝试你的选择,但这似乎不适合我。未按下“我的菜单链接”的以下代码<代码>正文:非(.theme-preset-active)#报头。导航栏nav>li>a
当前
正文:非(.theme-preset-active)#maisthead.navbar nav>li.current_page_item>a
第二个解决方案是否最好?是的,未按下的链接CSS选择器将需要返回多个元素-因此,在这种情况下,请使用
document.queryselectoral
。您当前的项目可能会返回一个元素(因为一次只能选择一个元素),因此您应该可以使用
document.querySelector
进行选择。