• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wyłączenie click dla elementów

0 głosów
496 wizyt
pytanie zadane 28 czerwca 2016 w JavaScript przez LCPGM Obywatel (1,550 p.)
edycja 28 czerwca 2016 przez LCPGM
Cześć, posiadam skrypt, który powinien najpierw wyhaczyć wszystkie divy z klasą .items, gdzie klasa .price jest mniejsza od 1, dodać im parę elementów css, oraz zabraniać używania na nich funkcji click. Chodzi o to, że w dalszej części skryptu po naciśnięci na diva z klasą .items jest on usuwany z miejsca w którym stoi i przenoszony do takiego "koszyka". Niestety, ale funkcja off w ifie nie działała. Macie jakieś pomysły?

Kod:

http://pastebin.com/aJT1UPJg

2 odpowiedzi

0 głosów
odpowiedź 28 czerwca 2016 przez Comandeer Guru (607,250 p.)

Na początek polecam normalnie formatować kod, bo połapać się w nim jest niesamowicie trudno.

Co do problemu: a wywołanie $( this ).off( 'click' )?

komentarz 28 czerwca 2016 przez LCPGM Obywatel (1,550 p.)
Niestety nie działa :/ Kolor i kursor jest zmieniany, ale można diva kliknąć, wykonuje się potem to samo co z resztą divów.
komentarz 28 czerwca 2016 przez LCPGM Obywatel (1,550 p.)
Co dokładnie masz na myśli mówiąc formatować?
komentarz 28 czerwca 2016 przez Comandeer Guru (607,250 p.)
if (value<1) {$(this).css("color", "red").css("cursor", "not-allowed");
           }

vs

if (value<1) {
    $(this).css("color", "red").css("cursor", "not-allowed");
}

Który jest czytelniejszy?

Co do kodu: tak w sumie, to przecież nie ma żadnego $.fn.off w if-ie.

komentarz 28 czerwca 2016 przez LCPGM Obywatel (1,550 p.)
Trochę go uporządkowałem, a co do tego co napisałeś, to nie wiem czy o to ci dokładnie chodziło. http://pastebin.com/7ALQccfi Teraz nie można kliknąć niczego.
komentarz 28 czerwca 2016 przez Comandeer Guru (607,250 p.)

Chodziło mi o:

if (value<1) {
            $(this).css("color", "red").css("cursor", "not-allowed");
            $( this ).off( 'click' );
 }

 

komentarz 28 czerwca 2016 przez LCPGM Obywatel (1,550 p.)
Też próbowałem i niestety nie.  http://pastebin.com/RRgv68XC
komentarz 28 czerwca 2016 przez Comandeer Guru (607,250 p.)

Bo za tym ifem podpinasz klik. Klik powinien być podpięty tylko wówczas, gdy value >= 1 (wówczas można się w sumie pozbyć off).

0 głosów
odpowiedź 28 czerwca 2016 przez LCPGM Obywatel (1,550 p.)
Dobra, udało mi się to rozwiązać, dodałęm return 0; zamiast off i działa. Napiszcie, czy na pewno jest w porządku i czy takie rozwiązanie jest dobre :D http://pastebin.com/Cyz4xTYq

Podobne pytania

0 głosów
2 odpowiedzi 1,312 wizyt
0 głosów
2 odpowiedzi 711 wizyt
pytanie zadane 25 sierpnia 2016 w JavaScript przez Śmieszek_;3 Użytkownik (780 p.)
0 głosów
2 odpowiedzi 840 wizyt
pytanie zadane 21 października 2018 w HTML i CSS przez DinapeS Początkujący (350 p.)

93,600 zapytań

142,524 odpowiedzi

322,993 komentarzy

63,085 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...