嗨我只是想知道这些if语句在哪里出错了我看不出它们有什么问题,但是当点击html按钮时它们似乎没有按照预期的那样工作,我已经确定了当单击按钮时,作为控制台显示“按钮单击”。
---
- hosts: local
tasks:
- name: Removes the tag in local repository.
shell: git tag -d {{git_deploy_tag}}
tags: [tagging]
- hosts: remote
tasks:
- name: Removes the tag in remote repository.
shell: git push origin :refs/tags/{{git_deploy_tag}}
tags: [tagging]
答案 0 :(得分:1)
您需要添加关键字else
,否则每个条件都会得到满足,让您走完整个圈子。
function colorSwitch () {
var thediv = document.getElementsByClassName("light");
console.log("Button Clicked");
if (thediv[0].style.backgroundColor == "#ff0000") {
thediv[0].style.backgroundColor = "#ffff00";
}
else if (thediv[0].style.backgroundColor == "#ffff00") {
thediv[0].style.backgroundColor = "#00ff00";
}
else if (thediv[0].style.backgroundColor == "#00ff00") {
thediv[0].style.backgroundColor = "#ff0000";
}
};
答案 1 :(得分:1)
每次点击后,都会直接询问一个if
语句;意思是当你进一步深入了解这个方法时,它们都变得真实。
包含else
语句是一种可行的方法。
另一种方法是使用Array
颜色,假设您需要特定订单:
var colors = ["#ff0000", "#ffff00", "#00ff00"];
var switched = 0;
function colorSwitch () {
var elements = document.getElementsByClassName("light");
elements[0].style.backgroundColor = colors[switched % colors.length];
switched++;
};
.light {
width: 100px;
height: 3em;
border-radius: .25em;
background-color: grey;
color: white;
line-height: 3em;
text-align: center;
cursor: pointer;
}
<div class="light" onclick="javascript:colorSwitch();">Click Me</div>
答案 2 :(得分:0)
如果阻止,您将覆盖每个背景颜色。您需要将其更改为if-else if-else format,切换案例,或使用对象选择新颜色。
function colorSwitch()
{
var thediv = document.getElementsByClassName("light");
console.log("Button Clicked");
if(thediv[0].style.backgroundColor == "#ff0000")
{
thediv[0].style.backgroundColor = "#ffff00";
}
else if(thediv[0].style.backgroundColor == "#ffff00")
{
thediv[0].style.backgroundColor = "#00ff00";
}
else if(thediv[0].style.backgroundColor == "#00ff00")
{
thediv[0].style.backgroundColor = "#ff0000";
}
}
或者你可以这样做:
var colorMap = {
"#ff0000": "#ffff00",
"#ffff00":"#00ff00",
"#00ff00": "#ff0000"
}
thediv[0].style.backgroundColor = colorMap[thediv[0].style.backgroundColor];
switch(thediv[0].style.backgroundColor)
{
case "#ff0000":
thediv[0].style.backgroundColor = "#ffff00";
break;
case "#ffff00":
thediv[0].style.backgroundColor = "#00ff00";
break;
case "#00ff00":
thediv[0].style.backgroundColor = "#ff0000";
break;
}
答案 3 :(得分:0)
即使您运行此代码:
thediv[0].style.backgroundColor = "#00ff00"
语句thediv[0].style.backgroundColor == "#00ff00"
将返回false(至少对于我的chrome控制台)
另外,正如其他人指出的那样,你需要使用else