Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript]Niewidoczny element dla jQuery
LewyM1
post 10.07.2012, 22:51:46
Post #1





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 22.02.2011
Skąd: Sierpc

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


Witam,
otóż mam mały problem z $(this). Mam sobie pewną stronę na której są tylko elementy dodane przez html(), cześć skryptu jest odpowiedzialna za to, aby dodane elementy przez html() po wskazaniu na nie myszką podświetlały się na żółto. Ta funkcja działa prawidłowo z elementami dodanymi przed uruchomieniem skryptu, ale jeśli dodam je funkcją html(), jQuery już ich nie zobaczy.
  1.  
  2. $(".div").html(divyy+"<p>"+Tablica[i]+"</p>\n<hr/>\n");
  3.  
  4. ...
  5. $("p").mouseover(function(){
  6. $(this).css("background-color", "yellow");
  7. });
  8. $("p").mouseout(function(){
  9. $(this).css("background-color", "white");
  10. });

Bardzo proszę o pomoc w rozwiązaniu mojego problemu.
Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sunpietro
post 11.07.2012, 06:13:34
Post #2





Grupa: Zarejestrowani
Postów: 262
Pomógł: 26
Dołączył: 23.01.2009
Skąd: eZ Systems

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


@lukesh, jaki live? starych metod chcesz go uczyć? bezsens.
Należy to zrobić tak:
Kod
$("p").on("mouseenter",function(){
    $(this).css("background-color", "yellow");
}).on('mouseout',function(){
    $(this).css("background-color", "white");
});


--------------------
Go to the top of the page
+Quote Post
lukesh
post 11.07.2012, 14:31:44
Post #3





Grupa: Zarejestrowani
Postów: 113
Pomógł: 14
Dołączył: 25.08.2006

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


Cytat(sunpietro @ 11.07.2012, 07:13:34 ) *
@lukesh, jaki live? starych metod chcesz go uczyć? bezsens.
Należy to zrobić tak:
Kod
$("p").on("mouseenter",function(){
    $(this).css("background-color", "yellow");
}).on('mouseout',function(){
    $(this).css("background-color", "white");
});


Takie coś nie będzie działać!

Jeżeli już stosować .on to w taki sposób:

  1. $(document).on('mouseenter', 'p', function(){
  2. $(this).css("background-color", "yellow");
  3. }).on('mouseout',function(){
  4. $(this).css("background-color", "white");
  5. });


Cytat(SmokAnalog @ 11.07.2012, 13:29:25 ) *
Nieprawda, przeciwieństwem mouseout jest właśnie mouseover. Proszę nie wprowadzać autora tematu w błąd.


Funkcja .mouseenter imituje to, co w css nazywa się hover.

Tutaj, na dole strony, przykład - porównanie .mouseenter i .mouseover:

http://api.jquery.com/mouseover/

Ten post edytował lukesh 11.07.2012, 14:36:20


--------------------
Edumemo.pl - Nauka Języków Obcych
Go to the top of the page
+Quote Post

Posty w temacie


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: 20.07.2025 - 07:18