如何检查div是否有某些特定的CSS?
以下是我没有成功的尝试:
$("#red").click(function() {
if( $("#red").css("top") == "10") {
$("#red").css("top", "100");
} else {
$("#red").css("top", "10");
}
/*
if( $("#red").css("background-color") == "red") {
$("#red").css("background-color", "grey");
} else {
$("#red").css("background-color", "red");
}
*/
});

#red{
position: absolute;
top:10px; left:10px;
width:100px; height:100px;
background-color:red;
cursor:pointer;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="red"></div>
&#13;
答案 0 :(得分:2)
您忘记检查像素 例如:
css("top") == "10px"
而不是
css("top") == "10"
至于background-color
,.css
将其作为rgb
返回。
$("#red").click(function() {
var redColor = "rgb(255, 0, 0)";
var greyColor = "rgb(128, 128, 128)";
if ($(this).css("top") == "10px") {
$(this).css("top", "100px");
} else {
$(this).css("top", "10px");
}
if ($(this).css("background-color") == redColor) {
$(this).css("background-color", greyColor);
} else {
$(this).css("background-color", redColor);
}
});
#red {
position: absolute;
top: 10px;
left: 10px;
width: 100px;
height: 100px;
background-color: red;
cursor: pointer;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="red"></div>
修改强>
我会采用不同的方法并使用css
类而不是内联样式。
以下是此用例的一个非常简单的示例:
$("#box").click(function() {
if ($(this).hasClass('up')) {
$(this).removeClass('up');
$(this).addClass('down');
} else {
$(this).removeClass('down');
$(this).addClass('up');
}
});
#box {
position: absolute;
width: 100px;
height: 100px;
cursor: pointer;
}
.up {
top: 10px;
left: 10px;
background-color: red;
}
.down {
top: 100px;
background-color: grey;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="box" class="up"></div>