смена background-image по клику на кноп-впер,назад, смена при нажатии на вперед и наз
Нужна помощь в создании скрипта для смена background-image определенного DIV по клику на кнопки "фон div вперед" и "фон div назад", и по мере возможности так ,чтобы не загружать все картинки,чтобы они постепенно качались , чтобы экономить трафик.
стиль див на котором должно меняться фон -page_centr_23 Скрипт написать помогли, но не парвильно работает ( $(function (){ var images = [ 'img/fon/fon_img40.jpg', 'img/fon/fon_img41.jpg', 'img/fon/fon_img42.jpg', ], $page_centr_23 = $('.page_centr_23'), imageIndex = 0; $('.image_change').click(function(){ if( $(this).attr('rel') == 'next' && imageIndex < images.length ) { $page_centr_23.css('background-image', 'url('+'img/fon/fon_img40.jpg'[++imageIndex ]+')' ) }else if( $(this).attr('rel') == 'prev' && imageIndex > 0 ){ $page_centr_23.css('background-image', 'url('+images[--imageIndex ]+')' ) } return false; }) }) а сами кнопки делал так - <a href="#"><img src="/img/js_view_photo.gif" alt="delete" border="0" class="image_change" rel="next" /></a> |
сделал немного , пмоогите еще
помогли доделать , а как теперь сделать атк чтобы изображения фона шли по кругу ? а то щас после последнего фото белый прстой фон
$(function (){ var images = [ '/img/fon/fon_img40.jpg', '/img/fon/fon_img41.jpg', '/img/fon/fon_img42.jpg', '/img/fon/fon_img23.jpg', ], $page_centr_23 = $('.page_centr_23'), imageIndex = 0; $('.image_change').click(function(){ if( $(this).attr('rel') == 'next' && imageIndex < images.length ) { $page_centr_23.css('background-image', 'url('+images[++imageIndex ]+')' ) }else if( $(this).attr('rel') == 'prev' && imageIndex > 0 ){ $page_centr_23.css('background-image', 'url('+images[--imageIndex ]+')' ) } return false; }); }) |
Чтобы по кругу - это как-то так:
if( $(this).attr('rel') == 'next' && imageIndex < images.length ) { if(imageIndex === images.length - 1) imageIndex = 0; else imageIndex++; $page_centr_23.css('background-image', 'url('+images[imageIndex]+')' )А чтобы после последнего ничего не лезло, то так: if( $(this).attr('rel') == 'next' && imageIndex < images.length - 1 ) { $page_centr_23.css('background-image', 'url('+images[++imageIndex ]+')' ) |
Цитата:
|
Большое спасибо за помощь , без вас бы не разобрался с этим кодом. на другом форуме помогли вот с этим кодом, думаю его оставлю .
$(function (){ var images = [ '/img/fon/fon_img40.jpg', '/img/fon/fon_img41.jpg', '/img/fon/fon_img42.jpg', '/img/fon/fon_img23.jpg', ], $page_centr_23 = $('.page_centr_23'), imageIndex = 0; $('a.image_change').click(function() { if ($(this).attr('rel') == 'next') { if (imageIndex < images.length - 1) { $page_centr_23.css('background-image', 'url('+images[++imageIndex ]+')') }else{ imageIndex = 0; $page_centr_23.css('background-image', 'url('+images[imageIndex]+')'); } }; if($(this).attr('rel') == 'prev') { if (imageIndex > 0) { $page_centr_23.css('background-image', 'url('+images[--imageIndex ]+')') }else{ imageIndex = images.length - 1 ; $page_centr_23.css('background-image', 'url('+images[imageIndex]+')'); } } return false; }); }) |
Часовой пояс GMT +3, время: 15:56. |