Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 1 333 Pomógł: 137 Dołączył: 25.03.2008 Skąd: jesteś?? Ostrzeżenie: (0%)
|
Mam pewnie banalny problem, ale nie za bardzo wiem jak go rozwiązać, może ktoś zna rozwiązanie to pomoże. ;-)
Mam na stronie 2 elementy, osobne div w body, nazwijmy je #blue i #red, chcę by po kliku na #blue zmieniło mu się tło na nieniski, a po zejściu z tego elementu tło wróciło do normy, pierwsze rozwiązanie to dodać w jq eventy click i blur i wszystko śmiga jak trzeba. Jednak dochodzi element #red sam w sobie nie ma eventów, jednak jak klikniemy na #blue a potem przejdziemy na #red, to #blue nadal ma mięć swoje niebieskie tło do czasu nie zejście albo z #blue albo z #red. Powiedział bym że chcę coś takiego uzyskać: [js] $('#blue').on('click', function(){ //tło zmienia się na niebieski }); $('#blue').on('blur', function(){ //tło zmienia się na normalne}); [/js] Tylko jak do blur'a dodać coś co zapobiegnie zmiany tła po kliku na #red? Próbowałem dodać zamiast blur $('body').on('click'), a w #red blokować propagację, ale gdy na stronie pojawią się inne elementy też z blokadą propagacji będzie problem nie znikania tła. Dodam że elementów na stronie typu #blue jest wiele, a #red jest jeden, po przejściu z jednego #blue na drugi, pierwszemu znika tło, a drugiemu się pojawia - ale po przejściu na #rad nic się nie dzieje nie zależnie do tego w jakim #blue jesteśmy. Wypadało by w blur'ze jakoś wykluczyć #red, ale nie mam pojęcia jak to zrobić. ;/ |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 333 Pomógł: 137 Dołączył: 25.03.2008 Skąd: jesteś?? Ostrzeżenie: (0%)
|
Click a focus w tym przypadku jest jednym i tym samym, nie robią mi różnicy.
Może jeszcze raz od początku. http://jsfiddle.net/39jtK/5/ Tutaj pola działają ok, chcę tylko by pole nie zmieniało się na białe jak ktoś kliknie na bar, pole ma być tak jak by nadal zaznaczone. http://jsfiddle.net/39jtK/6/ Tutaj z kolei pola i bar działają ok, ale da się zaznaczyć 2 pola na raz (klik na 1 potem od razu na 2), click na 2 element nie wywoła clicku na body - zostanie zablokowany przez return false - niestety tego nie mogę zmienić. Wnioskuję że najlepiej było by użyć blur'a, ale blokować go jakoś, niestety blur wykonuje się jako pierwszy przed ew. clickiem na bar i ustaleniem blokady, chciał bym bar i input traktować tak samo jako jedno, ale fizycznie nie mogą być w jednym znaczniku - strona zawiera wiele inputów, a jeden bar. |
|
|
|
ShadowD [JavaScript]Problem z blur 8.06.2013, 16:11:06
SmokAnalog Ja bym w ogóle zrezygnował ze zdarzenia blur dla d... 8.06.2013, 16:20:04
ShadowD @SmokAnalog przeczytałeś mój wpis do końca? :/ Nie... 8.06.2013, 17:05:40
SmokAnalog Nie doczytałem tam Czy nie jest tak, że i tak naj... 8.06.2013, 17:17:33
SmokAnalog Kombinujesz jak koń/słoń pod górkę
Po co dajesz r... 9.06.2013, 21:13:58
ShadowD 1, 2, 4 - to uproszczony przykład do bólu. 3 - z p... 9.06.2013, 21:32:52
SmokAnalog Cieszę się, że znalazłeś rozwiązanie, choć nie pop... 10.06.2013, 09:00:43 ![]() ![]() |
|
Aktualny czas: 26.12.2025 - 13:49 |