| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Применение библиотек > загрузка картинки в кэш при перемещении курсора |
| Автор: gcc 27.12.2010, 10:04 |
| нужно вывести на страницу в вертикальной и в горизонтальной прокрутке 20-100 картинок превью по 4-7кб хотел спросить и интересно: можно ли прокручивать бегунок и в кеш браузера вставлять эти картинки тогда когда эту картинку видно при прокрутке? |
| Автор: ayax2005 27.12.2010, 16:58 |
| Первое что приходи на ум - подгружать аяксом картинки, попадающие в область видимости (можно пачками) - так собственно гугл делает. И удобно, и эеономия траффика |
| Автор: gcc 27.12.2010, 22:50 |
| а как это сделать, чтобы была видно область видимости? как навесить функцию на это...? можно ли на jquery, ну или на javascript? |
| Автор: ayax2005 27.12.2010, 22:52 |
| Очень просто. У вас же бегунок прокручивается по какому-то событию, наверное по onclick на кнопочке? Вот туда и добавьте загрузку изображений. |
| Автор: gcc 27.12.2010, 22:55 |
| не понимаю, как мне узнать какие картинки загруженные или какие нет? допустим будет onclick стоять, но как мне узнть где я нахожусь в данный момент, чтобы загрузить или чтобы убрать картинки? еще на сайте jquery.com когда перемещаешься вниз к комментариям, то они загружаются чере аякс, тогда когда курсор мышки будет там... |
| Автор: gcc 11.1.2011, 04:19 | ||
| я вижу только один вариант: как только пользователь поставит курсор мышки в самом низу, в нижней части на картинки, то выполнить функцию которая подгрузит картинки...
====== в идеально случае то, что я хотел, наверное, как-то не реально делается, нужно координакты выситывать, и ввести учет кусков HTML которые в прокрутке... |
| Автор: gcc 14.1.2011, 00:21 | ||||||||||
| сделал!! еще раз: надо было сделать так как тут: http://www.google.com.ua/images?um=1&hl=uk&client=firefox-a&hs=2lO&rls=org.mozilla%3Aen-US%3Aofficial&channel=s&biw=1280&bih=801&tbs=isch%3A1&sa=1&q=%D1%84%D0%BE%D1%82%D0%BE+sexylette&aq=f&aqi=&aql=&oq=&gs_rfai= у гугла (там только с Firefox) нашел плагин: jquery http://plugins.jquery.com/project/lazyload демо: http://www.appelsiini.net/projects/lazyload/enabled.html
очень отлично было и при скроллинге!! только была проблема, что картинок было 200 штук и оно их показыло сразу, а потом скрывало... - это очень физически бессмысленно... если написать так:
то очень сильно грузило CPU клиента и и firefox писала, что нужно прекратить выполнение скрипта jquery1-4-4 посмотрев доки не нашел как решить... сделал так, поставив setTimeout:
но все равно не много прилично грузит CPU браузера... тут можно посмотреть как работает: (я тестировал на firefox2-3, вродебы нормально, на opera9 внизу верстка сбилась, на opera10-11, тоже, вродебы нормально) http://www.x0.org.ua/ |