Архив - только для чтения |
Сообщество uCoz Архивариус Архив Следущая фотография. Фотоальбом. (С помощью JavaScript) |
Следущая фотография. Фотоальбом. |
Давно что то я ничего полезного на форуме не писал... Вот решил написать небольшой скрипт. Суть проста - В фотоальбоме при просмотре фотографий жмем непосредственно на саму фотографию и страница переключается на следущее фото. По мне так полезно и удобно
![]() В шаблоне - "Страница с полной фотографией и комментариями", после тега </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. |
Я бы переписал функцию
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; }; Так будет короче и надежнее. |
Спасибо, пригодилось))
|
ПРикольнО!
|
Не сработал код на моем сайте.
![]() Это может быть связано с использованием старого кода шаблона сайта? |
Господа! А как сделать чтоб слайдшоу было? В идеале хочу что когда заходишь на сайт, сразу слайдшоу начиналось автоматом, на худой конец без автомата, нажав плей.
www.sv-photo.ru Сообщение отредактировал jurash - Четверг, 03 Сен 2009, 12:50:50
|
jurash, что бы все фотографии были в слайдшоу - я думаю это не очень понравится посетителям. Ибо это значит много трафика. Намного легче сделать Flash файл, в котором будет слайдшоу только самых лучших фотографий (ну например 10-15 штук)
|
| |||
Будьте в курсе всех обновлений: подпишитесь на наш официальный Telegram-канал uCoz и задавайте вопросы в чате сообщества!