![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 298 Pomógł: 0 Dołączył: 10.01.2014 Ostrzeżenie: (0%) ![]() ![]() |
Wita,
Mam problem z function js bo po kliknięciu w inny element powinna mi zniknąć class a nie znika co jest nie tak. Bo dodawać do daje jak kliknę to pojawia się obrazem z ramką a jak kliknę w inny obrazek o innej nazwie to zdjęcie nie znika a w css masz wszystko podane poprawnie.
Ten post edytował pawel06281990 12.02.2022, 21:03:47 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 403 Pomógł: 72 Dołączył: 15.07.2014 Ostrzeżenie: (0%) ![]() ![]() |
Pokaż HTML
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 298 Pomógł: 0 Dołączył: 10.01.2014 Ostrzeżenie: (0%) ![]() ![]() |
Tak wygląda html we function
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 403 Pomógł: 72 Dołączył: 15.07.2014 Ostrzeżenie: (0%) ![]() ![]() |
Nie widzę nigdzie klasy
Kod .check-list Więc na 99% nie znalazło elementu, dlatego też nie ma skąd tej klasy zabrać... Poza tym, nie rozumiem dlaczego po zmianie w `input` odwołujesz się aż do "kontenera" `meta-input` w taki sposób: Kod jQuery(this).parent().parent() Możesz to zrobić przecież krócej i szybciej: Kod $(this).closest('.meta-input')
Ten post edytował Salvation 13.02.2022, 20:17:25 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 298 Pomógł: 0 Dołączył: 10.01.2014 Ostrzeżenie: (0%) ![]() ![]() |
Class'a ma się pojawić po kliknięciu w element w tym przypadku w zdjęcie i ma być dodawana class'a a jak kliknę w inne zdjęcie to na tym poprzednim zdjęcie aktywne znika a pojawia się na innym
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Nigdzie w tym kodzie nie widzę klasy. Jest identyfikator.
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 403 Pomógł: 72 Dołączył: 15.07.2014 Ostrzeżenie: (0%) ![]() ![]() |
Wg mnie, DOM też jest do poprawy, bo ten `label` jako parent dla `img` nie wnosi nic semantycznego.
Gotowiec: Kod (function(){ 'use strict'; const $imgs = $(document).find('.radio-image-wrapper img'); $imgs.on('click', function(event) { event.preventDefault(); $imgs.removeClass('check-list'); $(this).addClass('check-list'); }); })(jQuery); Demo: https://codepen.io/n3veR/pen/dyZzgzy |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 6 806 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Efekt, który ma być wynikiem działania tego skryptu (części dotyczącej usuwania i dodawania klas), można osiągnąć w czystym CSS.
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 298 Pomógł: 0 Dołączył: 10.01.2014 Ostrzeżenie: (0%) ![]() ![]() |
dla wyjaśnienia działania dodam css
Po kliknięciu w obrazek rozwija się kolejne pole do wyboru i jest oznaczony innym obrazkiem z ramkami. |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 403 Pomógł: 72 Dołączył: 15.07.2014 Ostrzeżenie: (0%) ![]() ![]() |
Ponawiam prośbę o wrzucenie _całości_ kodu (HTML, CSS i JS). Najlepiej na codepen czy jsfiddle, bez tego ciężko będzie pomóc. zrozumieć zasadę działania.
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 298 Pomógł: 0 Dołączył: 10.01.2014 Ostrzeżenie: (0%) ![]() ![]() |
Posprawdzałem kod i naprawiłem błąd który miałem w kodzie żeby efekt był widoczny musiałem usunąć
Po usunąciu tego kod działa poprawnie tak jak miał działać dzięki za pomoc problem rozwiązałem. Ten post edytował pawel06281990 14.02.2022, 13:33:54 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 17:57 |