Autor | Zpráva | ||
---|---|---|---|
Dědeček Profil * |
#1 · Zasláno: 21. 8. 2011, 23:25:50
Zdravím,
Mám stránku která načte vždy 15 prvků, potřebuju jich ale vypsat víc a proto ajaxem načtu vždy další stránku vyberu příspěvky z další stránky a vložím je za posledních 15 zobrazených. Jenomže mám u každého prvku funkci mouseenter a mouseleave a tato funkce funguje pouze na prvních 15 které se zobrazí s načtením stránky. Prvky které se postupně načtou ajaxem se zobrazí korektně, kód je taky celý správně tak jako u prvních 15ti prvků, ale nefunguje na ně žádná funkce. Chci se tedy zeptat zdali je to způsobeno tím, že ostatní prvky dohrávám v průběhu nebo mám hledat chybu jinde? Děkuji |
||
Dědeček Profil * |
#2 · Zasláno: 21. 8. 2011, 23:33:59
Takhle načitám další prvky
jQuery.get("/page/"+nextpage, function(data){ new_posts = data.split('<!-- posts-start -->')[1].split('<!-- posts-end -->')[0]; $(".grid").append(new_posts); new_lists = data.split('<!-- lists-start -->')[1].split('<!-- lists-end -->')[0]; $(".list").append(new_lists); nextpage++; if(nextpage<=total_pages){check_for_more();} }); A tyto dvě funkce fungují jen na prvních 15 prvků, ale ne na zbytek jak by měli $(".post_thumb").mouseenter(function() { $(this).find('.likereblog').fadeIn(); }).mouseleave(function() { $(this).find('.likereblog').fadeOut(); }); $(".image").click(function () { var id = $(this).parent().attr("id").replace("thumb_","") window.location = "#"+id }); |
||
Dědeček Profil * |
#3 · Zasláno: 21. 8. 2011, 23:47:14
Teď jsem došel na to, že někdy jsou funkce funkční i dalších 15 prvků (celkem tedy 30 prvků) ale na dalších 15 už ne .. že by to bylo tedy tím, že se funkce načte dřív než prvky?
|
||
Dědeček Profil * |
#4 · Zasláno: 21. 8. 2011, 23:50:07
Vypadá to, že když obalím funkce viz. níže tak je to funkční. Může mi prosím někdo potvrdit, že je to tedy takto správně? :) děkuji
$(window).load(function(){ $(".post_thumb").mouseenter(function() { $(this).find('.likereblog').fadeIn(); }).mouseleave(function() { $(this).find('.likereblog').fadeOut(); }); $(".image").click(function () { var id = $(this).parent().attr("id").replace("thumb_","") window.location = "#"+id }); }); |
||
Dědeček Profil * |
#5 · Zasláno: 22. 8. 2011, 02:07:13
Tak blbo to dále ale vyřešil jsem to jednoduše. Při načitání obrázku se kontroluje jestli je aktuální načítaná stránka menší nebo rovna celkovému počtu stránek. Když ano načítá se další a když je větší tak se načtou funkce. :) Díky za rady!
|
||
Časová prodleva: 13 let
|
0