Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak zablokowac wywolanie funkcji ?!
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
klaudio
Witam mam takie pytanie. Mam sobie taka linijke kodu HTML:

<div onclick="call();" class="apButton">Test</div>

Po kliknieciu na tego DIVa zostanie wykonana funkcja call() i np. wyswietli mi ona alert. Pytanie jest jak zrobic zeby po kliknieciu na tego DIVa funkcja call() sie nie wywolala bez usuwania z DIVa (onclick="call();") questionmark.gif

Wiem ze w jQuery moze wybrac sobie tego diva i kombinowac z bind i unbind ale mnie interesuje tylko rozwiazanie blokowania wywolania funkcji ktora jest wpisana na stale w elemencie.

Dzieki za pomoc.
Pozdrawiam.
Sephirus
[JAVASCRIPT] pobierz, plaintext
  1. // w onload itp daj:
  2.  
  3. window['call'] = function () { return true; }
[JAVASCRIPT] pobierz, plaintext


lub możesz znaleźć tego diva w DOM albo poprzez jQuery i nadpisać onclick.

[JAVASCRIPT] pobierz, plaintext
  1. jQuery('.apButton')[0].onclick = null;
[JAVASCRIPT] pobierz, plaintext
klaudio
Czad rozwiazanie smile.gif WIELKIE DZIEKI

Jeszcze mam dwa pytania, pierwsze: jQuery('.apButton')[0].onclick = null;

Dlaczego za $('.apButton') musi byc [0] questionmark.gif

Drugie jak teraz zrobic zeby funkcjonalnosc funkcji call spowrotem przywrocic?? Powiedzmy mam taki przelacznik klikam na przycisk i klikajac na diva call() nie dziala potem jeszcze raz klikam na przycisk poczym klikam na diva i call dziala??
Sephirus
Cytat
Dlaczego za $('.apButton') musi byc [0]


JQuery zwraca tablicę elementów pasujących do ścieżki toteż odwołuje się do pierwszego czyli indeks:0. Dodatkowo aby niepotrzebnie nie korzystać z jQuery od razu odwołuje się do onclick, który to nadpisze tą funkcję.

Aby przywrócić funkcjonalnośc wystarczy dać :

[JAVASCRIPT] pobierz, plaintext
  1. jQuery('.apButton')[0].onclick = call;
[JAVASCRIPT] pobierz, plaintext
klaudio
Super "Sephirus" DZIALA exclamation.gif jeszcze raz dziekuje smile.gif

POZDRAWIAM!!! rsc.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.