Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript]JQUERY - zdarzenie podpiete do linkow działa tylko na niektorych
michat34
post 23.10.2012, 17:10:40
Post #1





Grupa: Zarejestrowani
Postów: 200
Pomógł: 1
Dołączył: 4.08.2012

Ostrzeżenie: (10%)
X----


jest skrypt ktory tworzy dynamiczne linki. chcialbym zeby po kliknieciu na te nowe linki cos sie działo.
podpiąłem wiec zdarzenie $('a').....

i problem jest taki ze działa mi ono dla linkow ktore napisałem w htmlu recznie, ale dla tych nowo tworzonych nie działa.

czy nowo tworzone obiekty nie sa obejmowane takimi zdarzeniami?

Ten post edytował michat34 23.10.2012, 19:50:35
Go to the top of the page
+Quote Post
#luq
post 23.10.2012, 18:15:17
Post #2





Grupa: Zarejestrowani
Postów: 589
Pomógł: 91
Dołączył: 22.05.2008
Skąd: Gliwice

Ostrzeżenie: (0%)
-----


Podaj gdzieś live ten skrypt, będzie łatwiej pomóc.

Taka mała porada:
[JAVASCRIPT] pobierz, plaintext
  1. $('#obr').innerHtml = '';
[JAVASCRIPT] pobierz, plaintext


będzie szybsze niż remove();


--------------------
Moja gra - scraby.io
Go to the top of the page
+Quote Post
b4rt3kk
post 23.10.2012, 21:20:05
Post #3





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Cytat(michat34 @ 23.10.2012, 18:10:40 ) *
jest skrypt ktory tworzy dynamiczne linki. chcialbym zeby po kliknieciu na te nowe linki cos sie działo.
podpiąłem wiec zdarzenie $('a').....

i problem jest taki ze działa mi ono dla linkow ktore napisałem w htmlu recznie, ale dla tych nowo tworzonych nie działa.

czy nowo tworzone obiekty nie sa obejmowane takimi zdarzeniami?


W jaki sposób są tworzone te linki? PHP czy JS? Opakowałeś całość skryptu w:

  1. $(function(){
  2. $('a').click(funkcja);
  3. });



--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
Go to the top of the page
+Quote Post
Greg0
post 23.10.2012, 21:39:57
Post #4





Grupa: Zarejestrowani
Postów: 264
Pomógł: 54
Dołączył: 31.08.2007
Skąd: Tychy

Ostrzeżenie: (0%)
-----


Jeśli tworzysz linki dynamicznie i chcesz żeby działały na nich eventy już zdefiniowane musisz je definiować w ten sposób
[JAVASCRIPT] pobierz, plaintext
  1. $('a').live('click', function() {
  2. //tresc
  3. });
[JAVASCRIPT] pobierz, plaintext


Ten post edytował Greg0 23.10.2012, 21:40:10
Go to the top of the page
+Quote Post
sh3d2
post 23.10.2012, 22:48:41
Post #5





Grupa: Zarejestrowani
Postów: 34
Pomógł: 11
Dołączył: 10.06.2011
Skąd: świdnica

Ostrzeżenie: (0%)
-----


wg dokumentacji jquery
Cytat
As of jQuery 1.7, the .live() method is deprecated. Use .on() to attach event handlers. Users of older versions of jQuery should use .delegate() in preference to .live().


wykorzystujac metode .on() wywolanie powinno wygladac tak
Kod
$("body").on("click", "a", function(){
// ...
})
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.03.2024 - 15:01