Показать сообщение отдельно
  #8 (permalink)  
Старый 17.01.2013, 17:54
Профессор
Отправить личное сообщение для tsigel Посмотреть профиль Найти все сообщения от tsigel
 
Регистрация: 12.12.2012
Сообщений: 1,398

Зачем делать прокрутку по кругу, если вы хотите сделать перемещение изображений не по "стрелочкам", а по кнопкам привязанным к конкретной картинке?

Самый простой вариант:
<div id="general"><!--Блок с position: relative-->
   <div id="forImages"><!--Блок с position: absolute;-->
      <div class="img1 allImgClass"></div><!--Блок с position: absolute;-->
      <div class="img2 allImgClass"></div><!--Блок с position: absolute;-->
      <div class="img3 allImgClass"></div><!--Блок с position: absolute;-->
      <div class="img4 allImgClass"></div><!--Блок с position: absolute;-->
   </div>
</div>

При такой структуре их надо расставить в ряд (скрипт):
var x = 0;
var num = 0; //Номер картинки
var margin = 5;//отступ между картинками 
$('.allImgClass').each(function () {//Цикл по всем картинкам
  $(this).css({'left': x + 'px'});
  num++;
  x = margin + ($(this).width() + margin * 2) * num;
});

Итак, у нас есть блок forImages, в котором все картинки лежат подряд. Теперь по нажатию на кнопки (1, 2, 3, 4) вам нужно лишь перечислить координаты forImages, при которых необходимая картинка была бы посередине.

Например:
$('.button2').click(function() {
   $('#forImages').css({'left': '-150px'});
})

В данном примере описываю максимально простой, а не правильный способ.

Последний раз редактировалось tsigel, 18.01.2013 в 10:19.
Ответить с цитированием