使用getElementById一次指定两个操作
Specify 2 actions at once using getElementById
假设我有一个按钮,我想在其中使用JavaScript来更改文本和文本颜色。我知道我可以用我粘贴在下面的代码来做这件事。对我来说,这似乎是多余的。有没有更好/更短的方法可以在不写两行的情况下实现这一点?也许我想在点击时对一个元素做两件以上的事情。。
<p id="p">What color is an egg?</p>
<button id="b">click for answer</button>
<script>
document.getElementById("b").addEventListener("click", function(){document.getElementById("p").innerHTML= "white";});
document.getElementById("b").addEventListener("click", function(){document.getElementById("p").style.color="white";});
</script>
document.getElementById("b").addEventListener("click", function(){
document.getElementById("p").innerHTML = "white";
document.getElementById("p").style.color = "white";
});
或者更好。。。
document.getElementById("b").addEventListener("click", function(){
var el = document.getElementById("p");
el.innerHTML = "white";
el.style.color = "white";
});
这不会起作用吗?
document.getElementById("b").addEventListener("click", function()
{document.getElementById("p").innerHTML= "white";
document.getElementById("p").style.color="white";});
像这样的东西可以在中工作
var events = [];
events.push(function(){document.getElementById("p").innerHTML= "white";});
events.push(function(){document.getElementById("p").style.color="white";});
document.getElementById("b").addEventListener("click", function(){
for(var i = 0; i < events.length; i++) events[i]();
});
对于一般情况,您可以使用匿名函数
(function (node) {
// code operating on node = document.getElementById("b")
node.addEventListener("click", function(){
(function (node_in) {
// code operating on node_in = document.getElementById("p")
node_in.innerHTML = "white";
node_in.style.color = "white";
})(document.getElementById("p"));
});
})(document.getElementById("b"));
相关文章:
- 在Google Analytics中跟踪用户,但只能在两个操作之间跟踪
- 一个jsp中有两个操作URL
- 无法延迟iPhone/iPad上的两个JavaScript操作
- 使用getElementById一次指定两个操作
- 仅将画布复合应用于两个操作
- 一个形成两个操作,具体取决于哪个按钮
- 如何在HTML中使用相同的输入值拥有一个输入字段,两个按钮和两个操作
- JSF 中的一个命令按钮中的两个操作
- 对按钮单击时的两个操作进行排序
- 一个表单需要两个操作(一个本地,一个远程)
- 在注册表格上按下“提交”时执行的两个操作:需要具体结果
- 使django-html表单在提交时执行两个操作
- Ruby on rails-如何让控制器使用ajax同时执行两个操作
- 如何在一个提交按钮上有两个操作
- 通过ajax通过一个按钮将单个表单提交给两个操作
- html形成具有两个操作的两个按钮
- 链接承诺执行两个操作
- 一个表单,一个提交按钮,但两个操作
- 单击一个按钮时调用两个操作 点火器.
- c#中的弹出消息用于单个按钮和两个操作