• Страница 1 из 4
  • 1
  • 2
  • 3
  • 4
  • »
Архив - только для чтения
Следущая фотография. Фотоальбом.
Piterski
Сообщений: 386
Репутация: 195

Сообщение # 1 | 03:09:53
Давно что то я ничего полезного на форуме не писал... Вот решил написать небольшой скрипт. Суть проста - В фотоальбоме при просмотре фотографий жмем непосредственно на саму фотографию и страница переключается на следущее фото. По мне так полезно и удобно smile

В шаблоне - "Страница с полной фотографией и комментариями", после тега </body> пишем код.

Code
<script type="text/javascript">
var spanBlock = document.getElementById('phtmSpan35');
var objImage = spanBlock.getElementsByTagName('img');
var idImage = objImage.item(0).id;
var nextLink = null;

function nextPhoto() {
         var allA = document.getElementsByTagName('a');
         for (i=0; i < allA.length; i++) {
              var inner = allA.item(i).innerHTML;
              if (inner.indexOf("Следующая") != -1) nextLink = allA.item(i).href;     
         }
         if (nextLink != null) window.location.href = nextLink;
}

function attachEvent(d_event, d_function, d_target) {
         if (typeof d_target == 'undefined') d_target = window;
         else d_target = document.getElementById(d_target);

         if (d_target.addEventListener) d_target.addEventListener(d_event, d_function, false);
         else if (d_target.attachEvent) d_target.attachEvent('on' + d_event, d_function);
         else return false;
};

attachEvent('click', nextPhoto, idImage);
</script>

Пример смотреть тут - http://about.ucoz.ru/photo/1-0-10

Скрипт по желанию можно модернизировать, все зависит от вашей фантазии.
Например можно сделать так что после клика на последнюю фотографию перенаправляло в текущий альбом. Для этого меняем

Code
if (nextLink != null) window.location.href = nextLink;

меняем на

Code
if (nextLink != null) window.location.href = nextLink;
else window.location.href = '$ALBUM_LINK$';

в общем - enjoy.

Aleko
Репутация: 46

Сообщение # 2 | 20:29:55
Я бы переписал функцию
Code
function attachEvent(d_event, d_function, d_target) {
          if (typeof d_target == 'undefined') d_target = window;
          else d_target = document.getElementById(d_target);

          if (d_target.addEventListener) d_target.addEventListener(d_event, d_function, false);
          else if (d_target.attachEvent) d_target.attachEvent('on' + d_event, d_function);
          else return false;
};

вот так
Code
function attachEvent(x,y,z){
  if(!z){z = window}else{z = document.getElementById(z)}
  z["on"+x] = y;
  };

Так будет короче и надежнее.

legal08
Сообщений: 2
Репутация: 8

Сообщение # 3 | 23:58:52
Piterski, Aleko, Спасибо большое! Я сама в этих кодах ничего не понимаю, но сделала как Вы написали и все получилось! biggrin
walther
Сообщений: 19
Репутация: 4

Сообщение # 4 | 20:24:47
АБАЛДЕНННО! respect
А знает ли кто-то как сделать следующее:
При наведении курсора на фото чтобы всплывало окно с увеличенной фоткой.
Какой скрипт нужен и где его прописать?

Заранее сенкс!


www.happy-cat.at.ua
hun-ter
Сообщений: 1
Репутация: 5

Сообщение # 5 | 17:33:01
Прикольно и полезно. СПАСИБО
ChelseaFAN777
Репутация: 14

Сообщение # 6 | 17:31:00
Спасибо, пригодилось))
Olya
Сообщений: 119
Репутация: 102

Сообщение # 7 | 18:11:51
Piterski, надо бы сделать чтобы при наведении появлялась ладошка, а не стрелка, а то никто и не догадается пока случайно не нажмет... biggrin А так супер!!!
Сообщение отредактировал Olya - Пятница, 29 Май 2009, 18:12:07
ArtAngelo
Репутация: 5

Сообщение # 8 | 12:00:13
Спасибо, здорово, все работает smile
MASTER8809
Сообщений: 11
Репутация: 7
Уровень замечаний:

Сообщение # 9 | 15:45:27
ПРикольнО!
Жека6104
Сообщений: 3
Репутация: 3

Сообщение # 10 | 13:01:34
Поставил самый первый код.....на двох сайтах после тега </body>
и они у меня не работают......не знаю почему
kanat07
Сообщений: 15
Репутация: -6
Уровень замечаний:

Сообщение # 11 | 03:14:45
Quote (Olya)
Piterski, надо бы сделать чтобы при наведении появлялась ладошка, а не стрелка, а то никто и не догадается пока случайно не нажмет... biggrin А так супер!!!

если было бы так, я бы посатвил... а так не очень..
jurash
Сообщений: 5
Репутация: 3

Сообщение # 12 | 22:21:00
не получилось
mr_smith2005
Сообщений: 1
Репутация: 15

Сообщение # 13 | 18:57:31
Не сработал код на моем сайте. sad
Это может быть связано с использованием старого кода шаблона сайта?

jurash
Сообщений: 5
Репутация: 3

Сообщение # 14 | 12:50:18
Господа! А как сделать чтоб слайдшоу было? В идеале хочу что когда заходишь на сайт, сразу слайдшоу начиналось автоматом, на худой конец без автомата, нажав плей.
www.sv-photo.ru
Сообщение отредактировал jurash - Четверг, 03 Сен 2009, 12:50:50
o_Lisovenko
uProduct
Сообщений: 4704

Сообщение # 15 | 12:52:58
jurash, что бы все фотографии были в слайдшоу - я думаю это не очень понравится посетителям. Ибо это значит много трафика. Намного легче сделать Flash файл, в котором будет слайдшоу только самых лучших фотографий (ну например 10-15 штук)

  • Страница 1 из 4
  • 1
  • 2
  • 3
  • 4
  • »
Поиск:
Telegram
Будьте в курсе всех обновлений: подпишитесь на наш официальный Telegram-канал uCoz и задавайте вопросы в чате сообщества!