Witam. Robię hovercards na stronie. Podpiąłem je do postów i działa ok. Mam taki podgląd posta/zdjeć jak na Facebooku (na cały ekran robi się div przezroczysty żeby nic nie można było klikać i pokazuje powiększone zdjęcie z posta oraz komentarze obok) i w tym podglądzie nie wykrywało mi wcześniej w ogóle eventów typu mouseenter
, mouseleave
. Miałem je zdefiniowane w pliku JS w taki sposób:
$('a.hovercard, .hovercard').bind('mouseenter', function() {
alert('mouse enter');
});
$('.hovercard, #hovercard').bind('mouseleave', function() {
alert('mouse leave');
});
Poszukałem w internecie i zrobiłem tak:
$(document).on('mouseenter', 'a.hovercard .hovercard', function() {
alert('mouse enter');
});
$(document).on('mouseleave', '.hovercard #hovercard', function() {
alert('mouse leave');
});
i to działa, ale chciałbym się dowiedzieć czy to nie jest jakieś bardzo zamulające. Dodając event do całego dokumentu chyba jakoś sprawdzać cały czas będzie każdą akcję na całej stronie. Czy jest na to inny sposób?
2 pytanie jeszcze mam.
Jak można określić współrzędne dla hovercards? Próbowałem wiele różnych kodów (event.currentTarget.x, event.target.x, event.target.explicitionCurrentTarget itp) i przy postach w większosci tych kodów pokazuje dobrze, ale w podglądzie już albo za daleko ustawi albo wgl o kilkaset px...
Dziękuję z góry za pomoc.