我正在寻找一种方法来改变页面的背景颜色,这取决于页面上显示的两个div中的哪一个。这是通过ID。有时div id="a"
会显示在页面上。有时会显示div id="b"
。当显示B时,A将根本不存在。A根本不会被呈现,它不仅会被隐藏或不显示,而是根本不会显示。
我该怎么做?
window.onload = function(){
var ab =document.getElementById('a')
var bod = document.getElementsByTagName('body')[0]
if(ab == null){
bod.style.background='green'
}else{
bod.style.background='blue'
}}
<body>
<div id = 'b'>this is B</div>
</body>
您可以尝试使用jQuery
:
var idOfDiv = $('body > div').attr('id');
if ((idOfDiv) === "a") {
$('body').css('background-color', 'green');
}
else if ((idOfDiv) === "b") {
$('body').css('background-color', 'blue');
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
Change the id from a to b OR b to a
<div id="a">
Lorem Ipsum
</div>
jQuery jQuery jQuery
或者如果你是纯JS,你可以这样做:
var idOfDiv = document.getElementById('a');
if (idOfDiv === null) {
document.body.style.backgroundColor = 'blue';
} else {
document.body.style.backgroundColor = 'green';
}
/*Change the id from a to b OR b to a*/
<div id="a">
Lorem Ipsum
</div>
JS使用纯JavaScript
我很惊讶,因为每个人都用js回答。但是如果你有两个id固定为div的a和b名称,那么你可以在css文件
中实现这一点div#a{
background-color:red;
}
div#b{
background-color:red;
}