我想要实现的目标是,如果窗口大小大于 400,#box2
颜色变为黑色(当 onhover on 时#box1
),如果小于 400,#box2
颜色变为黄色。
我以为我完成了这个任务,但是我发现我总是需要刷新页面才能看到效果。一旦窗口大小发生变化,jQuery 就不会立即工作。
我是否需要使用 ajax 或其他东西来使 jQuery 响应工作?
在线示例:http: //jsfiddle.net/dFbXr/
这是我的代码
HTML:
<div id="box1">
<div id="box2"></div>
</div>
jQuery:
function colorchange(){
if($(window).width() > 400){
$("#box1").mouseover(function(){
$("#box2").css('background','black');
}).mouseout(function(){
$("#box2").css('background','blue');
});
}else{
$("#box1").mouseover(function(){
$("#box2").css('background','yellow');
}).mouseout(function(){
$("#box2").css('background','blue');
});
}
}
colorchange();
CSS:
#box1{
display: block;
background:red;
background-size: 100%;
position: relative;
padding-bottom: 60%;
}
#box2{
display:block;
background:blue;
position:absolute;
height:70px;
width:70px;
right:50%;
top:50%;
margin: -35px -35px 0 0;
}