jquery - 如果它有一些 css 则有条件
问题描述
如何检查一个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>
解决方案
你忘了检查像素。
例如:
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>
推荐阅读
- c# - 获取 C# XML 节点的特定值
- vue.js - 如何创建不包含 App.vue 组件的登录屏幕
- javascript - 如何在 CI 中使用 JavaScript
- java - retrofit2.Call com.application.Example.Api.api_v2.BaseApiService.getUsermember(java.lang.String)' 在空对象引用上
- html - 在包含自定义组件的 Angular 页面中,我应该如何确保所有 ID 都是唯一的以消除警告?
- variables - cypress:then 块之外的变量范围。我面临问题
- java - 应用程序无法启动服务
- reactjs - React PropTypes:不同对象形状的数组
- regex - SED:如何在连续行(Windows)上搜索单词“tokens”?
- shell - 在 Delphi 中使用 ShGetFolderPath,我应该包括哪个单元?