Javascript - 通用函数的多种使用

标签 javascript html function

我这里有一个情况示例,我想在单击时更改 div 的颜色。我是否必须有两个不同的函数,每个 div 一个?如果我想要应用于 div 的函数非常复杂怎么办?如果我有数百个 div 怎么办?我可以创建一个可以应用于每个 div通用函数吗?我的意思并不是例如 document.getElementsByClassName("... "),我想例如单独更改颜色。

需要明确的是,如何将相同函数应用于不同的对象?像 document.getElementThatIsClicked("... ") 谢谢。

function changeColor1() {
  document.getElementById("div1").style.backgroundColor = "#21a9c9";
}
function changeColor2() {
  document.getElementById("div2").style.backgroundColor = "#21a9c9";  
}
<div id="div1" onClick="changeColor1()" style="position:absolute; top:10px; left: 10px; width:200px; height: 200px; background-color:#000000;"></div>
                      
<div id="div2" onClick="changeColor2()" style="position:absolute; top: 10px; left: 220px; width:200px; height: 200px; background-color:#000000;"></div>

最佳答案

您可以创建一个函数来接受要更改颜色的元素,并使该函数更改该元素的背景颜色

 function changeColor(elem) {
   elem.style.backgroundColor = "#21a9c9"
 }
<div id="div1" onClick="changeColor(this)" style="position:absolute; top:10px; left: 10px; width:200px; height: 200px; background-color:#000000;"></div>

<div id="div2" onClick="changeColor(this)" style="position:absolute; top: 10px; left: 220px; width:200px; height: 200px; background-color:#000000;"></div>

关于Javascript - 通用函数的多种使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32828650/

相关文章:

javascript - 如何使用 Clipboard.js 复制输入的值

javascript - 使用 json 调用 webService 在 Titanium 中出错,但使用 curl 从终端调用 webService 工作正常

javascript - 如果编辑器的宽度太小,是否有办法将工具栏按钮换行到 TinyMCE 的下一行?

html - 如何使下拉菜单透明,只有可见元素是按钮内的箭头和右边框?

javascript - 如何使用 mongodb(mongoose)/react 检索图像?

c++ - 函数指针类型定义错误

javascript - JSON 输出到 AngularJs

php - 多复选框,可以选中所有和取消选中所有

javascript - 使用函数作为函数的参数 : why use of anonym function?

delphi - "Incompatible types: method pointer and regular procedure"