/ / JavaScript / Jquery przy zdarzeniu wyzwalającym <div class => - javascript, element

JavaScript / Jquery na wyzwalacz zdarzenia <div class => - javascript, element

Mam pokaz slajdów text / html z Javascriptemjednak po przejściu nowego tekstu potrzebuję również skryptu, aby uruchomić klasę: hover w pozycji menu odpowiadającej treści zawartej w pokazie slajdów.

W celu wizualnego przykładu zobacz: http://i.stack.imgur.com/mkyMJ.png

Przesłałem kod JS do http://pastebin.com/Kp4a7VXP do oglądania.

Byłbym bardzo wdzięczny za pomoc w tej sprawie! :)

Dzięki wielkie!

Z poważaniem, Jake

Odpowiedzi:

0 dla odpowiedzi № 1

Próba naśladowania stanu najechania może nie mieć sensu, dlatego lepiej mieć klasę css, taką jak .active dodany do elementu, dla którego chcesz uzyskać stan najechania, a następnie dołącz css ze stanu najechania do tej klasy.


0 dla odpowiedzi nr 2

Zakładam, że masz CSS jak

.item{
/* normal appearance */
}

i

.item:hover{
/* appearance when mouse over */
}

ale o ile wiem, nie ma sposobu, aby uruchomićpseudo-klasa: najedź przez javascript. Ale możesz użyć do tego standardowej klasy (ale dla semantyki nazwałbym ją jak .currentSlide lub .activeSlide)

.item:hover,
.item.hover{
/* appearance when mouse over
or selected */
}

a następnie możesz dodać i usunąć tę klasę za pomocą javascript dla bieżącego elementu slajdu, na przykład:

currentSlideDiv.classList.add("hover");

EDYTOWAĆ:

Możesz użyć takiej funkcji i zadzwonić highlightCurrentSlideName(currentContentItem); wewnątrz NextClick() i PreviousClick()

function highlightCurrentSlideName(slideIndex){

var slideNameList = jQuery(".contentmenu a");
jQuery(slideNameList).removeClass("current"); //unhighlight all slide names

var currentSlide = slideNameList[slideIndex];      //select a slide name by a numeric index
jQuery(currentSlide).addClass("current"); //highlight that element
}

i dodaj klasę do pliku CSS i nadaj jej dowolny styl.

.contentmenu a.current{
color: lightblue;
background-color: gray;
}

PS: Nie jestem programistą jQuery. Zawsze piszę czysty JavaScript, po prostu zauważyłem, że już go masz.