我连续有5个div。它们在页面加载时都有1个背景。我想改变div的BG和之前所有相同的div。我不知道该怎么做
div { style="background: url(images/red)"}
<div class="myDiv">One</div>
<div class="myDiv">Two<div>
<div class="myDiv">Three</div>
<div class="myDiv">Four</div>
<div class="myDiv">Five</div>
所以当上面的div三上徘徊时,我希望div有一个,两个和三个有蓝色背景。
如果我做了
$('.myDiv').hover(function(){
$(this).prev('.myDiv').css({...});
});
它只会影响前一个。有人能指出我正确的方向吗?
答案 0 :(得分:2)
这是Javascript:
$('.myDiv').hover(function(){
$(this).prevAll('.myDiv').andSelf().css({...});
});
你的标记也有错误,第二个div没有关闭。:
<div class="myDiv">One</div>
<div class="myDiv">Two</div>
<div class="myDiv">Three</div>
<div class="myDiv">Four</div>
<div class="myDiv">Five</div>
答案 1 :(得分:2)
kmb385有正确的答案...来阐述他的答案,你可以取消设置鼠标输出的背景。
$('.myDiv').on({
mouseover: function(){
$(this).prevAll().andSelf().css("background", "red");
},
mouseout: function(){
$('.myDiv').css("background", "");
}
});