Помогите разобраться с логикой поведения скрипта
Задание такое: необходимо создать скрипт наподобие галереи, но который в цикле показывает всю галерею, так же отдельно есть названия, которые активизируются соответственно картинке....
При ховере на название показывается нужная картинка, а при mouseout опять должен заработать цикл. Вот тут-то у меня и возникла проблема JS код: var _first = true; var _time = null; var _el = false; var _note = false; var _index = false; var _index2 = false; function initPage() { _el = $(".pic2 img"); _note = $(".nav2 li"); time = setTimeout((function() { innerfade(); }), 2000); } if (window.addEventListener) window.addEventListener("load", initPage, false); else if (window.attachEvent) window.attachEvent("onload", initPage); function innerfade() { // расставляем классы if (_first) { _el.filter(".active").next().addClass('next'); _note.eq(0).addClass("active"); _first = false; } // дисплей блок некстовому элементу _el.filter(".next").fadeIn(0); // манипулируем названиями _index = _el.index($(".next")[0]); _note.filter(".active").removeClass("active"); _note.eq(_index).addClass("active"); // прячем активный и показуем следующий элемент _el.filter(".active").fadeOut(300, function(){ $(this).removeClass("active"); _el.filter(".next").addClass('active').removeClass("next").next().addClass('next'); // если последний елемент, то добовляем класс некст первому элементу if (!_el.filter(".active").next().is("img")) {_el.eq(0).addClass('next');} }); // обрабатываем ховер на названия $(_note).hover(function(){ clearTimeout(time); _note.removeClass("active"); $(this).addClass("active"); _index2 = _note.index($(this)[0]); _el.removeClass("next").removeClass("active"); _el.eq(_index2).addClass("next").fadeIn(0); _el.not(".next").fadeOut(300, function(){ _el.filter(".next").addClass("active").removeClass("next"); }); },function(){ _el.eq(_index2).next().addClass("next"); if (!_el.eq(_index2).next().is("img")) {_el.eq(0).addClass('next');} time = setTimeout((function() { innerfade(); }), 6000); }); // вызываем повторно функцию time = setTimeout((function() { innerfade(); }), 2000); }; HTML код: <div class="hold"> <div class="pic2"> <img src="images/1.jpg" width="500" height="380" alt="" class="active" /> <img src="images/2.jpg" width="500" height="380" alt="" /> <img src="images/3.jpg" width="500" height="380" alt="" /> <img src="images/4.jpg" width="500" height="380" alt="" /> </div> <ul class="nav2"> <li><a href="#">Фото 1</a></li> <li><a href="#">Фото 2</a></li> <li><a href="#">Фото 3</a></li> <li><a href="#">Фото 4</a></li> </ul> </div> Вообщем мучаюсь уже порядка 8 часов и никак у меня не получается сделать показ фоток при ховере на название... аж самому смешно... Вообщем переберал кучу вариантов... при таком варианте работает через раз, а бывает глюки... короче помогите PLZ продумать hover функцию |
MarkupDeveloper,
Что за фреймворк? Мне сложно так разобраться, потому что с фреймворками не работал. Я могу скачать, подключить и посмотреть в чём может быть дело. |
для начала - прочитать доки по фреймворку. внимательно.
|
Разобрался... путем переделывания кода
|
Часовой пояс GMT +3, время: 23:57. |