Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Загрузка изображений по мере прокрутки сладйера (https://javascript.ru/forum/dom-window/44655-zagruzka-izobrazhenijj-po-mere-prokrutki-sladjjera.html)

GEN_18 28.01.2014 11:22

Загрузка изображений по мере прокрутки сладйера
 
Есть слайдер фотографий на подобие http://grandreport.ru/reportage/ , где крутится около 300 фотографий.
Чтоб увеличить скорость загрузки сайта, решил применить плагин lazyload.
Но он работает только при вертикальной прокрутки страницы. При горизонтальной прокрутке фотографий он не работает...
Вот маюсь все, как такое можно сделать...чтоб фотографии загружались по мере скроллинга в ту, или иную сторону по горизонтали, а не по вертикали ?

единственное, что я могу придумать - это заставить браузер принимать горизонтальный скролл в <div> за вертикальный, тока как это сделать я не знаю

kostyanet 29.01.2014 10:22

Цитата:

Сообщение от GEN_18
Но он работает только при вертикальной прокрутки страницы.

Ну так поменяйте контейнер в том самом плагине. Если, конечно, больше чем на подключение плагина вы согласны.

GEN_18 29.01.2014 11:44

контейнер менял, не помогает.
Сейчас сделал так, чтоб изображения, по мере прокрутки слайдера отображались, но только во время прокрутки страницы, т.е. я прокрутил слайдер, до серого фона, затем прокрутил страницу чуть вверх/вниз и она загрузились

Теперь тут подумал, можно ли как сделать, чтоб браузер думал, что пока ты прокручиваешь слайдер - прокручивается страница, но при этом она оставалась на месте

рони 29.01.2014 11:58

Цитата:

Сообщение от GEN_18
Но он работает только при вертикальной прокрутки страницы. При горизонтальной прокрутке фотографий он не работает...

:no:
http://www.appelsiini.net/projects/l...container.html

GEN_18 29.01.2014 12:02

рони, я пробовал указывать контейнер со слайдером...в итоге скипт прогружал тока первые картинки, которые изначально были в области экрана, при прокрутке же, он ничего не прогружает

рони 29.01.2014 12:07

GEN_18,
слайдер как сделан?

GEN_18 29.01.2014 12:54

рони,
я его взял готовый. работает на 3 скриптах
вот сам мой пример, который я пытаюсь сделать http://sincov.ru/gallery

рони 29.01.2014 14:26

GEN_18,
вы не пробовали задать контейнеру конкретный id ?
$(function() {
		$("#test img").lazyload({
		failurelimit : 20,
			threshold : 200,
			placeholder : "/js/grey.gif",
			effect : "fadeIn",
			container: $("#test")
		});
	});


<div class="list" id="test">

GEN_18 29.01.2014 15:00

Конечно пробовал:
Цитата:

Сообщение от GEN_18 (Сообщение 294686)
рони, я пробовал указывать контейнер со слайдером...в итоге скипт прогружал тока первые картинки, которые изначально были в области экрана, при прокрутке же, он ничего не прогружает

А если я вставляю конкретный ID, то выводятся абсолютно все изображения в таком виде
<img alt="" class="gimg203" height="500" src="/files/minified_gallery_201401281650051601_202.jpg" width="332" original="/files/minified_gallery_201401281650051601_202.jpg">

т.е. атрибут src не меняется на необходимый /js/grey.gif

добавил еще такую строку
$(window).bind("load", function() { 
    var timeout = setTimeout(function() { $(".gallery").trigger("scroll") },1000);
});

после чего, через указанное время один раз прогрузятся страницы, на которые я прокрутил скрол

kostyanet 29.01.2014 15:19

Я имел ввиду докопаться посмотреть как скрипт устроен и поменять ему контейнер и события с окна браузера, на div, или что там. По-моему прокрутка окна и прокурка слоя это разные вещи.


Часовой пояс GMT +3, время: 08:17.