Mám za sebou 5 divov. Všetky majú pri načítaní stránky 1 pozadie. Chcem zmeniť BG divu, ktorý sa vznáša, a všetky predchádzajúce identické divy. Nie som si istý, ako na to
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>
takže keď sa vznáša div TROJA vyššie, chcem, aby divy JEDEN, DVA a TRI mali modré pozadie.
keby som to urobil
$(".myDiv").hover(function(){
$(this).prev(".myDiv").css({...});
});
Ovplyvnilo by to iba prvý predchádzajúci. Môže ma niekto nasmerovať správnym smerom?
odpovede:
2 pre odpoveď č. 1Tu je Javascript:
$(".myDiv").hover(function(){
$(this).prevAll(".myDiv").andSelf().css({...});
});
A tiež máte chybu v označení, druhá časť nie je uzavretá .:
<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>
Príklad práce: http://jsfiddle.net/snynL/
2 pre odpoveď č. 2
kmb385 má správnu odpoveď ... ak chcete vysvetliť svoju odpoveď, môžete zrušiť nastavenie pozadia myši.
$(".myDiv").on({
mouseover: function(){
$(this).prevAll().andSelf().css("background", "red");
},
mouseout: function(){
$(".myDiv").css("background", "");
}
});