Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/40.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 onclick更改多个元素的颜色_Javascript_Css_Colors_Onclick_Styles - Fatal编程技术网

Javascript onclick更改多个元素的颜色

Javascript onclick更改多个元素的颜色,javascript,css,colors,onclick,styles,Javascript,Css,Colors,Onclick,Styles,我想通过单击按钮来更改页面中多个元素的颜色。我真的认为这将是非常困难的,但我有很多困难实现它。我的代码如下更改了第一个元素——我知道这是因为我使用的是document.getElementById,但当我将其更改为document.getElementByClass时,它会停止工作。我尝试过内联样式和内部样式,但没有效果。有人能解释一下怎么做吗。我怀疑这是不可能的。谢谢 <html> <head> <style> #p1{color:#4d982b;} <

我想通过单击按钮来更改页面中多个元素的颜色。我真的认为这将是非常困难的,但我有很多困难实现它。我的代码如下更改了第一个元素——我知道这是因为我使用的是document.getElementById,但当我将其更改为document.getElementByClass时,它会停止工作。我尝试过内联样式和内部样式,但没有效果。有人能解释一下怎么做吗。我怀疑这是不可能的。谢谢

<html>
<head>
<style>
#p1{color:#4d982b;}
</style>
<script type="text/javascript">
function ChangeStyle()
{
document.getElementByClass("p1").style.color="#aaaaaa";
}
</script>
</head>
<body>

<p class="p1">Hello world!</p>
<p class="p1">Hello world!</p>

<input type="button" onclick="ChangeStyle()" value="Change style" />

</body>

#p1{颜色:#4d982b;}
函数ChangeStyle()
{
document.getElementByClass(“p1”).style.color=“#aaaaaa”;
}

你好,世界

你好,世界


这通常是使用类而不是id来完成的

每页只能有一个id。 将代码更改为

<p class="myclass">Hello world!</p>
<p class="myclass">Hello world!</p>

你好,世界

你好,世界

然后使用javascript更改类的颜色属性

这里有一个链接可以帮助你

这通常是使用类而不是id来完成的

每页只能有一个id。 将代码更改为

<p class="myclass">Hello world!</p>
<p class="myclass">Hello world!</p>

你好,世界

你好,世界

然后使用javascript更改类的颜色属性

这里有一个链接可以帮助你

页面上的元素不能具有相同的
id
id
对于单个元素来说是唯一的,因此当您调用
getElementById(“p1”)
时,它将只选择值为
“p1”
的第一个
id


解决方案是使用类,或者使用两个不同的
id
调用2个
getElementById

页面上不能有具有相同
id
的元素
id
对于单个元素来说是唯一的,因此当您调用
getElementById(“p1”)
时,它将只选择值为
“p1”
的第一个
id


解决方案是使用类,或使用2个不同的
id
调用2个
getElementById

id必须是唯一的,因此请改用类名:

<p class="p1">Hello world!</p>
<p class="p1">Hello world!</p>

ID必须是唯一的,因此请改用类名:

<p class="p1">Hello world!</p>
<p class="p1">Hello world!</p>

我相信您正在考虑document.getElementsByClassName-也许有人可以为我澄清,但我相信getElementById是获取元素时唯一的单数返回

让我们假设您正在尝试使用类“foo”获取所有元素

var elem=document.getElementsByClassName('foo'))
对于(变量i=0;i

上面可能有语法错误,但我想你明白了大概的意思~

我相信你想到的是document.getElementsByClassName-也许有人可以为我澄清一下,但我相信getElementById是获取元素时唯一的单数返回

让我们假设您正在尝试使用类“foo”获取所有元素

var elem=document.getElementsByClassName('foo'))
对于(变量i=0;i


上面可能有语法错误,但我想您已经了解了一般的想法~

Getelementbyid方法只适用于一个元素。尝试返回数组的getelementsbyid。

Getelementbyid方法仅适用于一个元素。尝试返回数组的getelementsbyid。

非常感谢您的评论,但我知道这一点,但当我使用document.getElementByClass(“p1”).style.color=“#aaaaaa”;什么都没有发生。请检查我刚才添加的链接,它应该可以解决您的问题。这真的应该被标记为答案。如果你想让它在IE中工作,答案在上面的链接中,这是第一个答案。您需要创建
getElementByClassName
方法的自定义实现。感谢您的评论;-)非常感谢您的评论,但我知道,但当我使用document.getElementByClass(“p1”).style.color=“#aaaaaa”;什么都没有发生。请检查我刚才添加的链接,它应该可以解决您的问题。这真的应该被标记为答案。如果你想让它在IE中工作,答案在上面的链接中,这是第一个答案。您需要创建
getElementByClassName
方法的自定义实现。感谢您的评论;-)啊,我知道这会是一个问题,但当我把id改成类时,什么都不起作用。我做错了什么#p1{color:#4d982b;}函数ChangeStyle(){document.getElementByClass(“p1”).style.color=“#aaaaa”;}

你好

你好,世界

检查Olivier提供的链接。您需要使用类
“p1”
正确地遍历每个元素,因此她需要做的是
getElementsByClassName()
,如下所述:下面是一个可用的小提琴示例。请注意
[1]
以更改第二个元素。因此,您希望使用项目的长度循环项目。万分感谢,我的问题有一半是它不能与IE一起工作,但因为我只需要它在android上工作,所以我很高兴。啊,我知道这会是一个问题,但当我将id更改为class时,一切都不起作用。我做错了什么#p1{color:#4d982b;}函数ChangeStyle(){document.getElementByClass(“p1”).style.color=“#aaaaa”;}

你好

你好,世界

检查Olivier提供的链接。您需要使用类
“p1”
正确地遍历每个元素,因此她需要做的是
getElementsByClassName()
,如下所述:下面是一个可用的小提琴示例。请注意
[1]
以更改第二个元素。因此,您希望使用项目的长度循环项目。非常感谢,我的问题有一半是它不能与IE一起工作,但我只需要它在android上工作,我很高兴。非常感谢你在这方面的帮助。我已经到了拔头发的阶段。问一个简单的问题,有没有办法和IE一起工作?或者应该