Jak zaznaczyć aktywny element z listy?

0

Witam, moja przygoda z JS zaczęła się tydzień temu, tak więc jestem początkujący. Natrafiłem na problem, który jest prawdopodobnie banałem ale jakoś nie udaje mi się go rozwiązać :<

$(document).ready(function () {
        $("ul li").click(
           function () {
               if ($(this).prev().css({ "background": "red" }))
               {
                   $(this).prev().css({ "background": "pink" })
               }
               var s = $(this).css({ "background": "red" });
               s.parent().prev(".info-dymek").css({ "background": "pink" });

           }
        );
    });
 <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
    </ul>

Chciałbym uzyskać efekt, w którym zaznaczony element zmieni kolor na czerwony i każde następne zaznaczenie zmieni się na czerwone i usunie poprzednie zaznaczenie. Powyższy kod działa tylko dla określonego schematu.. Zaznaczając element "1" i następnie element "2" zadziała prawidłowo, jednak w przypadku zmiany kolejności "1" następnie "3" zmieni się element poprzedni. Jak mogę uzyskać taki efekt, prosiłbym o pomoc .
Pozdrawiam.

0

Dla kazdego klikniecia elementu z listy: aktualnemu nadaj aktywność, całej reszcie na wszelki wypadek usuń.

<font color="yellow">Jestem na telefonie, wiec na razie przykladu nie dostaniesz.</span>

0

Do POBRANIA wartości css użyjesz po prostu $(selektor).css("background-color"); - dokumentacja się kłania

Background to skrótowy sposób PRZYPISANIA wartości, więc nie możesz w ten sposób odczytać danych (bo Ci zwróci cały set danych).

Druga rzecz - KOMPLETNIE ŹLE się za to bierzesz.
Od kolorowania masz CSS, od akcji na javascripcie masz np. klasy.

Po kliknięciu dodajesz klasę zaznaczony, a jak już jest - usuwasz.

Potem w razie potrzeby robisz sobie np. $('li.zaznaczony') i od razu masz cały set - w dodatku CSS w jednym miejscu zmienisz kolor w razie potrzeby, a nie szukasz po milionach miejsc w kodzie.

Jak już będziesz sobie klasy dodawał to wiedz, że istnieje coś takiego jak toggleClass - to już w ogóle wszystko w jednej linijce się zamyka.

0

Dziękuje za pomoc, problem został rozwiązany :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1