» »

jQuery - izbira drugega elementa navzgor

jQuery - izbira drugega elementa navzgor

algo ::

Koda
<element1 id="test1">
 <element2><element3 class="test2">Besedilo</element3>
 <element4>...</element4>
 </element2>
</element1>


Ko grem z miško čez ELEMENT4, želim, da se spremeni class pri ELEMENTU3. Kako bi to naredil?

probal sem tako, pa ne dela
jQuery...

$('test1 element4').hover(function() {
$(this).closest('element3').addClass("test3");
}, function() {
$(this).closest('element3').removeClass("test3");
}


Kakšna ideja kako bi prišel do elementa št.3? Pa mora biti "univerzalna" rešitev, lahko bi dal na element kak id in do njega potem enostavno prišel, a ta rešitev zame ni dobra, potrebujem nekaj kar bi samodejno delovalo, da bi pač iz elementa4 prišlo do elementa3 (in tem spremenilo class).

Hvala za pomoč
  • spremenil: algo ()

jype ::

Če je razmerje znotraj DOMa ves čas enako, komot rečeš .siblings('element2').children('element3'), pa bo vedno pravi.

algo ::

Ta rešitev ne bo ok, ker je lahko takšnih elementov znotraj elemeta 1 več...

Na primer

<element1 id="test1">

 <element2><element3 class="test2">Besedilo 1</element3>
 <element4>...</element4>
 </element2>

<element2><element3 class="test2">Besedilo 2</element3>
 <element4>...</element4>
 </element2>

<element2><element3 class="test2">Besedilo 3</element3>
 <element4>...</element4>
 </element2>

</element1>


in zdaj vsakič ko grem z miško preko posameznega elementa4 želim, da se class vrhnjega elementa3 spremeni. Pri ostalih elementih3 mora ostati enak. Na primer, če grem čez element4 v vrstici 12, se mora spremeniti stil elementa3 v vrstici 11, če grem čez element4 v vrstici 4, se mora spremeniti stil element3 v vrstici 3 itd. Še kakšna ideja?

Zgodovina sprememb…

  • spremenil: algo ()

algo ::

Evo, mi je nekako uspelo...

var $krneki = $(this).parent();
$krneki.children('span').addClass('test3')

jype ::

Sorry, nisem vidu da je element4 v bistvu sibling od element3.

$(this).prev() ti vrne element3.

algo ::

Hvala za rešitev. $(this).prev().addClass("test3") je dosti krajša koda ;)

Zgodovina sprememb…

  • spremenil: algo ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[JavaScript] nastavljanje CSS stila v določenem elementu HTML seznama

Oddelek: Izdelava spletišč
7894 (856) iMark
»

Java in reference (strokovno vprašanje)

Oddelek: Programiranje
8822 (651) marjan_h
»

jquery in div-i (strani: 1 2 )

Oddelek: Izdelava spletišč
8711345 (10083) lisjak
»

problem z linuxom (rabim cimprej prosim)

Oddelek: Operacijski sistemi
111459 (1275) Isotropic
»

Iframe pomoč

Oddelek: Izdelava spletišč
91225 (1086) opeter

Več podobnih tem