- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
"use strict"
var carousel = document.getElementById("carousel");
var carouselItems = document.getElementsByClassName("carousel-item");
var carouselIndecarors = document.getElementsByClassName("carousel-indicator");
var carouselActiveInt = 0;
var carouselInterval;
var carouselRefresh = function(){
}
for(var i=0;i<document.getElementsByClassName("carousel-indicator").length;i++){
document.getElementsByClassName("carousel-indicator")[i].onclick = function(){carouselIndecarorChange(this)};
}
var carouselIndecarorChange = function(id){
carouselItems[carouselActiveInt].classList.toggle("carousel-item__active");
carouselIndecarors[carouselActiveInt].classList.toggle("carousel-indicator__active");
carouselActiveInt = id.getAttribute("data-slide-to");
carouselItems[carouselActiveInt].classList.toggle("carousel-item__active");
carouselIndecarors[carouselActiveInt].classList.toggle("carousel-indicator__active");
}
var carouselNext = function(){
console.log(carouselActiveInt);
carouselItems[carouselActiveInt].classList.toggle("carousel-item__active");
carouselIndecarors[carouselActiveInt].classList.toggle("carousel-indicator__active");
if(carouselActiveInt == carouselItems.length-1){
carouselActiveInt=0;
}
else{
carouselActiveInt++;
}
carouselItems[carouselActiveInt].classList.toggle("carousel-item__active");
carouselIndecarors[carouselActiveInt].classList.toggle("carousel-indicator__active");
}
var carouselAutoPlay = function(time){
carouselInterval = setInterval(
function(){carouselNext()},time)
}
carouselAutoPlay(5000);
carousel.onmouseover = function(){clearInterval(carouselInterval)};
carousel.onmouseout = function(){carouselAutoPlay()};
> function(){carouselAutoPlay()};
)}; ()};
И даже если весь код состоял из вызова функции f, и можно было написать obj.onevent = f;, автор не искал лёгких путей и использовал более сложную конструкцию obj.onevent = function(){ f(); }. Аналогично и с первым аргументом setInterval.
В своём комментарии я предложил посмеяться над этими весёлыми авторскими усложнениями и представил более сложный вариант, который сводится к простому carouselAutoPlay, как и авторская конструкция.
В случае carouselIndecarorChange я так и не понял, это говнокод или нет. С одной стороны, вместо this для относительного удобства используется первый аргумент. С другой стороны - функция скорее всего используется только один раз, можно было оставить this и не усложнять.
Как поправить что то может посоветуете?
Ты просишь меня посмотреть свой говноскрипт, но делаешь это без уважения и даже не называешь меня Дмитрий Иванович
Если опу интересно - пусть спросит. Это он у нас в гостях, а не мы у него
Например у семы от вежливых людей батхерд
Можно сказать вежливо пару раз, что это развлекательный сайт, мы никаких гарантий не даём, справок не выписываем, ничего не обещаем, сарказм во всех комментариях включён по умолчанию. А потом и посылать, если после этого человек ещё думает, что ему кто-то что-то должен.
На ГК срочно требуются вайперы, флудеры и тролли второй категории.
Не, мне разряд нельзя терять
Если что, пишите мне на почту, я с ними разберусь, они мне банку сгущёнки должны.
Начав говорить на одну из них обязательно набегут интересующиеся.
Футбол не смотрел с ЧМ
Бабы - в данный момент времени отношения к ним не имею
Кароче я какой то ненастоящий мальчик
http://www.evrika.ru/upload/publication/318392-178432-crime-doctor.jpg
так не бывает.
Футбол не смотрел с ЧМ
Я тоже его не смотрю только нервы портить.
Наших походу по кривизне ног в сборную берут.
Бабы - в данный момент времени отношения к ним не имею
Эх я тоже женат же.
Хотя тут на днях познакомился с одной. Пока как то не сложилось сказать, что я женат. Она мне так мило улыбается при встрече.
иВасилий, ах ты, сукин кот. Ты минусуешь?..
ЗЫ 2 kegdan я же говорил извечные темы.
знаю что ауди - 4 кольца
>> Эх я тоже женат же.
Я то не женат
И как оно? стоит того?
Семья - рассадник лжи и измен.
Что касается негетеросексуальных отношений, свадьба двух мужчин - жалкая попытка создать что-то вроде отношений, завсегда обреченная на провал, с учетом того, что геи строят отношения по схеме: понравился человек->познакомился с ним->попользовался->расстался.
история моей жизни, только вместо геев - бабы
вот
Мне кажется, или в этом предложении есть противоречие?
RTLMoveMemory?
* http://govnokod.ru/3630#comment37392
* http://govnokod.ru/12243#comment163504
* http://govnokod.ru/14430#comment213844
* http://govnokod.ru/16434#comment241873
* http://govnokod.ru/18185#comment286760
* http://govnokod.ru/18203#comment286930
Здорово. Люблю JS, но упустил свой шанс изучать его как первый язык.
Расскажите потом (через год-два) о том, что из этого вышло.
В строках 15-24 можно вынести carouselItems[carouselActiveInt] в отдельную локальную переменную. Аналогично - в строках 30-44
В строках 12-13 document.getElementsByClassName("carouse l-indicator") лучше тоже вынести в отдельную переменную и считать один раз перед циклом. Скорее всего движок это дело соптимизирует, но в общем случае оно должно тормозить. Впрочем, такая переменная уже даже была создана...
Строки 16-17 повторяются 4 раза, можно их вынести в отдельную функцию, тогда пара функций упростится:
Для возможность добавления нескольких событий можно использовать не onсобытие = .., а addEventListener('событие', ...).
Вероятно, полезно определять, имеется ли уже interval, и очищать его, если что. А остановку вынести в отдельную функцию:
И ещё в строке 48 табы с пробелами смешались. Нехорошо.
Для тебя это просто эксперимент, а парню всю жизнь страдать
>> Люблю JS, но упустил свой шанс изучать его как первый язык.
С паскаля начинал?
В отличие от меня, у него ещё есть возможность завязать с этим делом.
> С паскаля начинал?
Да.
Да даже меня соблазнило это отродье тьмы, а у меня он не первый и даже не пятый язык. Что уж говорить о неокрепшей детской психике?
Звучит как "мой первый язык - WCT", или "мой первый партнёр - Бен Ганн", или "мой первый тайтл - Boku no Pico"