![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 72 Pomógł: 0 Dołączył: 15.09.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Mam problem, że robie stronę na której ładować ma się dużo zdjęć co wiadomo, że może trwać dość długo. Czy wie ktoś może jak się robi takie coś jak jest np. na fotka.pl że zdjęcia ładują się dopiero wtedy gdy są widoczne na ekranie, tzn. że jeśli np. w danej chwili ze 100 zdjęć na ekranie widzimy tylko 30, to reszta nie jest ładowana razem ze stroną tylko zostanie załadowana wtedy gdy przewiniemy strone tak, że te zdjęcia będą widoczne na ekranie?
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 72 Pomógł: 0 Dołączył: 15.09.2008 Ostrzeżenie: (0%) ![]() ![]() |
Przepraszam za zwłokę z umieszczeniem kodu, ale trochę go modyfikowałem i go zepsułem a potem wpadłem na kolejny pomysł i z opublikowaniem kodu chciałem zaczekać az zacznie mi to działać.
Stworzyłem coś takiego Kod <html> <head> <script type="text/javascript" src="jquery-1.3.2.min.js"></script> <script type="text/javascript"> $(document).ready( function() { var scr_height = document.body.offsetHeight; $(document).scroll( function() { $(".box img").each( function(){ var pos = document.body.scrollTop; var suma = pos + document.body.clientHeight; var p = $(this).offset(); var name = $(this).attr("name"); if(p.top < suma && p.top+230 > pos) { document.images[name].src = name; $("p").html("height: "+p.top + "pos: "+ pos + " suma: " +suma +" "+name); } } ); } ); $(".box img").each( function(){ var pos = document.body.scrollTop; var suma = pos + document.body.clientHeight; var p = $(this).offset(); var name = $(this).attr("name"); /*var img = new Image(); img.src = name; var width = img.width; var height = img.height; $(this).width(width); $(this).height(height);*/ if(p.top < suma && p.top+230 > pos) { document.images[name].src = name; $("p").html("height: "); } } ); } ); </script> <style type="text/css"> .box { margin : 20px 10px; float : left; } .box img{ border : 1px solid; height : 230px; width : 230px; } #frame { position:fixed; top : 10px; right : 10px; border-width : 2px; border-style:solid; width : 200px; color : #4b4b4b; } </style> </head> <body> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/135252gory4.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/134306pp0067.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/133853wo_scn08.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/minglown/kolorowe.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/181339grafika_92_tn.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/minglown/krajobrazy.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/minglown/owoce.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/pior_picture6pior.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/pior_picture5pior.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/pior_picture3pior.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/172015s6001200.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/182345piorun.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/181824dsc03330.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/180606p1110092+.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/170646widokju5.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/170111z945.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/1705085.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/014723tecza1.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/215918rozowa_kropelka.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/211004a040725waterdrop3769.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/21085910i.jpg"> </div> <div class="box"> <img src="" alt="" name="http://www.obrazki.info/miniatury/2108172.jpg"> </div> <div id="frame"> <p></p> </div> </body> </html> tu mozna zobaczyć jak to działa http://test.antimo.pl/images2.html Jedyny problem jaki mam teraz to że skrypt nie do konca działa w ie6. Tzn mam wrazenie, że wczytuje on wszystkie obrazki już na starcie. Nie wiem jak jest w nowszych wersjach bo nie testowałem. Jeśli można to jakoś ulepszyć to proszę o porady (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ten post edytował czarek1986 13.07.2009, 14:15:41 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 19:06 |