我希望part 1
onclick div样式更改,再次点击它part 2
恢复正常。我试过这样做但是我没有达到part 2
结果。
以下是Javascript代码
function abc() {
document.getElementById("test").style.color="red";
}
再次点击测试div后,颜色应该恢复为默认颜色,即黑色...
答案 0 :(得分:41)
function abc() {
var color = document.getElementById("test").style.color;
if (color === "red")
document.getElementById("test").style.color="black";
else
document.getElementById("test").style.color="red";
}
答案 1 :(得分:2)
使用jQuery:
$(document).ready(function(){
$('div').click(function(){
$(this).toggleClass('clicked');
});
});
答案 2 :(得分:1)
有一些逻辑来检查颜色或有一些标志,
function abc() {
var currentColor = document.getElementById("test").style.color;
if(currentColor == 'red'){
document.getElementById("test").style.color="black";
}else{
document.getElementById("test").style.color="red";
}
}
答案 3 :(得分:0)
您可以在点击更改之前检查颜色。
function abc(){
var color = document.getElementById("test").style.color;
if(color==''){
//change
}else{
//change back
}
}
答案 4 :(得分:0)
一个简单的switch语句可以解决这个问题:
function abc() {
var elem=document.getElementById('test'),color;
switch(elem.style.color) {
case('red'):
color='black';
break;
case('black'):
default:
color='red';
}
elem.style.color=color;
}
答案 5 :(得分:0)
function abc() {
var color = document.getElementById("test").style.color;
color = (color=="red") ? "black" : "red" ;
document.getElementById("test").style.color= color;
}
答案 6 :(得分:0)
更好地改变元素的类(.regular是黑色,.alert是红色):
function abc(){
var myDiv = document.getElementById("test");
if (myDiv.className == 'alert') {
myDiv.className = 'regular';
} else {
myDiv.className = 'alert';
}
}