Javascript 我正在进行切换,我想在触发切换函数时更改div的背景颜色更改

Javascript 我正在进行切换,我想在触发切换函数时更改div的背景颜色更改,javascript,reactjs,gatsby,Javascript,Reactjs,Gatsby,我的职能是: function onClickChange() { let MyDiv = document.getElementById('myDIV') if (MyDiv.style.display === 'none') { MyDiv.style.display = '' } else { MyDiv.style.display = 'none' } } 我的部门是: <div id="myDIV"> Hello world</div

我的职能是:

function onClickChange() {
  let MyDiv = document.getElementById('myDIV')
  if (MyDiv.style.display === 'none') {
    MyDiv.style.display = ''
  } else {
    MyDiv.style.display = 'none'
  }
}
我的部门是:

<div id="myDIV"> Hello world</div>

<div id="backgroundColor" onClick={onClickChange}>I am div with image and I need a background color change toggle functionality based on "myDIV" toggle functionality</div>
你好,世界
我是div与图像,我需要一个背景颜色改变切换功能的基础上“myDIV”切换功能
作为一个信息,我正在使用css“样式化组件”。有人能帮忙吗?提前谢谢!
快乐编码:D

检查下面的代码,要更改背景颜色,您可以对单击的div使用
样式。backgroundColor

功能更改(obj){
让MyDiv=document.getElementById('MyDiv');
//element.classList.toggle('mystyle');
如果(MyDiv.style.display=='none'){
MyDiv.style.display=“”
obj.style.backgroundColor=“红色”;
}否则{
MyDiv.style.display='none'
obj.style.backgroundColor=“蓝色”;
}
}
你好,世界

我是带图像的div,我需要一个基于“myDIV”切换功能的背景颜色更改切换功能
对于这种情况,您可以轻松使用react
state

例如:

渲染方法:

<div className={this.state.myClass} onClick={onClickChange}>I am div..</div>
当状态更改时,将自动调用渲染方法


不要在
REACT
的反模式中使用
document.getElementById('myDIV')

你的按钮在哪里?请编辑你的问题,不要在注释中添加代码。在我的情况下,它不是一个按钮,而是id为“backgroundColor”的div。它显示:TypeError:无法设置未定义的属性“backgroundColor”?是否在函数调用中将引用传递为
this
?否,我应该使用“this”吗?是的,要获取单击div的引用,您必须使用
this
否则直接通过
getElementById
进入函数,谢谢,但我需要的是同时显示和隐藏“myDIV”并更改“backgroundColor”div的背景色。我是说在一个功能下。这是onClickChange。@JahidJony在渲染方法中,可以使用if语句。类似这样的内容:this.state.myClass==
red
?…:无效的
 onClickChange() {
      const {myClass} = this.state // read state first
      if (myClass === 'red') {
        this.setState({myClass: 'black'}) // set some black class name
      } else {
        this.setState({myClass: 'red'}) // set some red class name
      }
    }