Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem jQuery
mariuszg
post
Post #1





Grupa: Zarejestrowani
Postów: 136
Pomógł: 0
Dołączył: 22.06.2006

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


Witam,

Po kliknięci na add dodaje mi się div który mogę przenosić, a po jego przeniesieni chcę zwrócić pozycję jego do "odczyt".
Jeśli ręcznie dodam <div class="napis">T543</div> w kodzie strony to zwraca mi pozycję a jeśli klikam na add i później przenoszę to jej nie zwara
proszę o pomoc

  1. $(document).ready(function(){
  2.  
  3. $('#add').click(function(){
  4. $('#klatka').append('<div class="napis">T543</div>');
  5. $(".napis").draggable();
  6. });
  7.  
  8.  
  9. $(".napis").click(function(){
  10. var x = $(this).position();
  11. var sc = "Top: " + x.top + " Left: " + x.left ;
  12. $('#odczyt').text(sc);
  13. });
  14.  
  15. });
Go to the top of the page
+Quote Post
redeemer
post
Post #2





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

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


Dzieje się tak ponieważ, gdy wykonuje się kod jquery $(".napis").click(...) jeszcze nie ma w DOMie elementu z klasą napis.

Możesz użyć live.
Go to the top of the page
+Quote Post
mariuszg
post
Post #3





Grupa: Zarejestrowani
Postów: 136
Pomógł: 0
Dołączył: 22.06.2006

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


A jak tego użyć ?
Dałem tak i nie działa:

  1. $( ".napis" ).live( "click", function() {
  2.  
  3. var x = $(this).position();
  4. var sc = "Top: " + x.top + " Left: " + x.left ;
  5. $('#odczyt').text(sc);
  6.  
  7.  
  8. });
Go to the top of the page
+Quote Post
Turson
post
Post #4





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


Cytat(redeemer @ 17.04.2014, 12:44:12 ) *
Dzieje się tak ponieważ, gdy wykonuje się kod jquery $(".napis").click(...) jeszcze nie ma w DOMie elementu z klasą napis.

Możesz użyć live.

version deprecated: 1.7, removed: 1.9

'on' polecam
Go to the top of the page
+Quote Post
nospor
post
Post #5





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




live jest DEPRECATED. Teraz to sie nazywa ON
https://api.jquery.com/on/
Go to the top of the page
+Quote Post
mariuszg
post
Post #6





Grupa: Zarejestrowani
Postów: 136
Pomógł: 0
Dołączył: 22.06.2006

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


dałem tak ale nadal nie dizła

  1. $( ".napis" ).on( "click", function() {
  2.  
  3. var x = $(this).position();
  4. var sc = "Top: " + x.top + " Left: " + x.left ;
  5. $('#odczyt').text(sc);
  6.  
  7. });
Go to the top of the page
+Quote Post
freemp3
post
Post #7





Grupa: Zarejestrowani
Postów: 467
Pomógł: 77
Dołączył: 6.09.2008
Skąd: Miechów / Kraków

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


  1. $( document ).on( "click", ".napis", function() { ...
Go to the top of the page
+Quote Post
mariuszg
post
Post #8





Grupa: Zarejestrowani
Postów: 136
Pomógł: 0
Dołączył: 22.06.2006

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


dział, dziękuję

finalnie mam tak:

  1. $( document ).on( "mouseup", ".napis" , function() {
  2.  
  3. var x = $(this).position();
  4. var sc = "Top: " + x.top + " Left: " + x.left ;
  5. $('#odczyt').text(sc);
  6.  
  7. });



zwraca pozycję po położeniu elementu
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 05:10