Регистрация Войти
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
Слайдер фотопленка
Для пролистывания картинок наведите мышку на стрелку вправо / влево или используйте колесико мышки.
Данный пример Слайдер фотопленка реализован на чистом JavaScript и не использует никаких библиотек.
Исходный код этого примера:
<style>
.scroller_container {
padding-left:50px;
padding-top:50px;
}
.scroller_container div {
float: left;
vertical-align: baseline;
}
.scroller_window {
width: 530px;
overflow: hidden;
}
.scroller_row {
position: relative;
white-space: nowrap;
width: 100%;
padding: 22px 0 22px 0;
background: url('images/foto.gif') repeat-x;
}
.scroller_row img {
padding: 0;
margin:0;
}
.scroller_row a {
padding:0;
margin:0;
}
.scroller_container > img{
float: left;
vertical-align: baseline;
padding: 2px 1px 0 1px;
cursor: pointer;
}
a img {
border:0;
height: 100px;
width: auto;
}
</style>
<script>
var _scroller;
_scroller = function () { // scroller
return{
speed:10, /*скорость в милисекундах*/
position:0,
width:0,
step:0,
t:null,
window:0,
// Инициализация скроллера
init: function () {
var el;
// Получить ширину внутренней части скроллера
el = document.getElementById('scroller_rule');
_scroller.width = el.clientWidth;
// Получить ширину окна скроллера
el = document.getElementById('scroller_window');
_scroller.window = el.clientWidth;
// Установка обработчика колесика мыши
addEvent(el, 'mousewheel', this.wheel);
addEvent(el, 'DOMMouseScroll', this.wheel);
// fix размеров для background (Opera, Chrome)
el = document.getElementById('scroller_row');
el.style.width = _scroller.width+'px';
},
// Обработчик колесика мыши
wheel: function (e) {
// Если уже идет прокрутка, то игнорировать событие
if (_scroller.t != null) {
_scroller.stop();
}
e = e ? e : window.event;
var wheelElem = e.target ? e.target : e.srcElement;
var wheelData = e.detail ? e.detail * -1 : e.wheelDelta / 40;
// В движке WebKit возвращается значение в 100 раз больше
if (Math.abs(wheelData) > 100) {
wheelData = Math.round(wheelData / 100);
}
if (wheelData < 0) {
_scroller.step = 5 * Math.abs(wheelData);
_scroller.timer('right', 1);
}
else {
_scroller.step = 5 * Math.abs(wheelData);
_scroller.timer('left', 1);
}
if (window.event) {
e.cancelBubble = true;
e.returnValue = false;
e.cancel = true;
}
if (e.stopPropagation && e.preventDefault) {
e.stopPropagation();
e.preventDefault();
}
return false;
},
// Функция скроллера
scroll: function (dir, wheel) {
var el = document.getElementById('scroller_row');
var step;
if (wheel == 0) {
step = 2;
}else{
step = Math.round(Math.log(_scroller.step * 2) * 2.5);
_scroller.step--;
if (_scroller.step == 0) {
_scroller.stop();
}
}
if (dir == 'left') {
_scroller.position += step;
if (_scroller.position > 0) {
_scroller.position = 0;
_scroller.stop();
}
}
else { // dir='rigth'
_scroller.position -= step;
if (_scroller.position < (_scroller.window - _scroller.width)) {
_scroller.position = _scroller.window - _scroller.width;
_scroller.stop();
}
}
el.style.left = _scroller.position + 'px';
},
// Таймер скроллера
timer: function (dir, wheel) {
_scroller.stop();
_scroller.t = setInterval("_scroller.scroll('" + dir + "', " + wheel + ");", _scroller.speed);
},
// Остановка скроллера
stop: function () {
if (_scroller.t != null) {
clearInterval(_scroller.t);
_scroller.t = null;
}
}
};
}();
/*if(!document.funcDomReady)document.funcDomReady=function(){_scroller.init()};
else onDomReady(_scroller.init);*/
window.onload=function(){setTimeout(_scroller.init,100);}; // стартуем с задержкой, чтобы все прогрузилось
</script>
<div class="scroller_container">
<img src="images/left.gif" alt="" onmousemove="_scroller.timer('left',0);" onmouseout="_scroller.stop();">
<div class="scroller_window" id="scroller_window">
<div class="scroller_row" id="scroller_row">
<div id="scroller_rule">
<a href="#1" onclick="return!1"><img src="http://kdg.htmlweb.ru/photo/praga/b1.jpg" alt=""></a>
<a href="#2" onclick="return!1"><img src="http://kdg.htmlweb.ru/photo/praga/b2.jpg" alt=""></a>
<a href="#3" onclick="return!1"><img src="http://kdg.htmlweb.ru/photo/praga/b3.jpg" alt=""></a>
<a href="#4" onclick="return!1"><img src="http://kdg.htmlweb.ru/photo/praga/b4.jpg" alt=""></a>
<a href="#5" onclick="return!1"><img src="http://kdg.htmlweb.ru/photo/praga/b5.jpg" alt=""></a>
<a href="#6" onclick="return!1"><img src="http://kdg.htmlweb.ru/photo/praga/b6.jpg" alt=""></a>
<a href="#7" onclick="return!1"><img src="http://kdg.htmlweb.ru/photo/praga/b7.jpg" alt=""></a>
<a href="#8" onclick="return!1"><img src="http://kdg.htmlweb.ru/photo/praga/b8.jpg" alt=""></a>
<a href="#9" onclick="return!1"><img src="http://kdg.htmlweb.ru/photo/praga/b9.jpg" alt=""></a>
<a href="#10" onclick="return!1"><img src="http://kdg.htmlweb.ru/photo/praga/b10.jpg" alt=""></a>
</div>
</div>
</div>
<img src="images/right.gif" alt="" onmousemove="_scroller.timer('right',0);" onmouseout="_scroller.stop();">
</div>
<br class="clear">
За основу взят код ManHunter, но полностью переделан на класс, добавлена кроссбраузерность, переделана структура стилей.
Вас заинтересует зацикленный показ картинок в слайдере.
.
Прокомментировать/Отблагодарить