Цитата:
Цитата:
У тя проблема не в этом. Во-первых, какого хрена ты напихал в код setInterval'ов? Их вообще не должно быть, это неправильный подход. Получается ты используешь что-то вроде "метода тыка". Еще ты почему-то боишься массивов. Вместо slides у тебя отдельно slide0, slide1 и т.д. Почему ты меню выдвигаешь каждый пункт отдельно - неясно. Не проще ли задать -100% родителю? Цитата:
Изучай "классы". Вместо того чтобы раскидывать по всей страницы кучу переменных и функций для работы с ними, объединяй их по смыслу в группы - в объекты. Несколько свойств + методы для работы с ними. Допустим меню: class Menu() { constructor(selector) { this.items = document.querySelector(selector).children; this.active = -1; this.setActive(0); this.setupListeners(); } setActive(index) { this.active = index; this.items[index].classList.add('active'); } setupListeners() { for (var i = 0; i < this.items; i++) this.items[i].onclick = this.setActive.bind(this, i); // ES5, не работает в старье } } var menu = new Menu('.menu'); menu.setActive(1); Анимацию проще сделать на css3. В старье будет без анимации. Ну и че? Почти всегда старый браузер == старый комп == тормоза при анимации. Так что все справедливо. Вот короче тебе заготовка: http://jsfiddle.net/danya_postfactum/z8cLa59g/ Только событие wheel не кроссбразерное. Нужны костыли для событий DOMMouseScroll (FF старый), mousewheel (chrome старый, ie8). Работает во всех нормальных браузерах, в IE10+. Только меню я побыстрому отцентрировал через css3. Подключи classList.js с просторов инета и заработает в IE9. Подключи addEventListener.js и почти что заработает в IE8, правда без анимации. |
да, не думал я когда за js садился что будет все так сложно, может это все ж не мое, хз, уже 4 месяца учу, а толку 0.
уж подумал тут на меня забили :) спасибо за инфу, буду разбираться... |
Цитата:
На старые браузеры не обращай внимания, их пора забывать уже. Изучи "классы" (конструкторы, прототипы) и события и будет проще. |
Насчет интервалом. Там они должны быть, верней setTimeout, а еще верней - requestAnimationFrame. Нужны для анимации, покадровой. У меня в коде ее нет, я использовал css3 анимацию.
|
Цитата:
При чем тут яндекс-браузер? Такого браузера нет. Загляните в статистику сайта и увидите какие есть, а каких нет. |
Цитата:
прокрутку я увидел здесь. отсюда же, собственно говоря, и динамические слайды. я хз как у них там все написано, я и сам вижу что с интервалами косячно вышло, но, имхо, для маленького сайтика с маленьким кол-вом посетителей для начала было бы норм, если бы не... Цитата:
ладно, пофиг, будем лучше сразу делать как дядьки говорят |
Часовой пояс GMT +3, время: 09:09. |