упорядочение чисел из целого числа
Здравствуйте ребята. столкнулся с проблемой. пишу свой слайдер. с этим проблем нет, проблема выросла когда дошёл до выведения ссылок слайдера, к примеру от 1 до ... зависимо сколько слайдов. у меня есть общее значение слайдов $(".sliders img").size(); к примеру показывает общее значение 3. как мне из этого числа вывести построчно в цикле 1,2,3 ? пробывал через массив и перебор в цикле for. всё чего я добился это array[3], array[3], array[3]. может определённая функция есть? или я не в том направлении думаю( направьте на путь истенный:help:
для наглядности сам скрипт: $(document).ready(function($) { var slideNum = 0; var slideCount = $(".slideBar").size(); var arr = [slideCount]; for(var i = 0; i<arr;i++){ console.log(arr); } $(".slideBar").hide(); $(".slideBar").eq(slideNum).show(); function slideInterval () { $(".slideBar").animate({opacity:"hide"},500); if(slideNum == (slideCount-1)){ slideNum=0; }else{ slideNum++; } setTimeout(function(){ $(".slideBar").eq(slideNum).animate({opacity:"show"},500); }, 500); }; interval = setInterval(slideInterval, 4000); $(".slider").hover(function(){ interval = clearInterval(interval); }, function(){ interval = setInterval(slideInterval, 4000); }); $("#next").click(function(){ $(".slideBar").animate({opacity:"hide"},500); if(slideNum == (slideCount-1)){ slideNum=0; }else{ slideNum++; } setTimeout(function(){ $(".slideBar").eq(slideNum).animate({opacity:"show"},500); }, 500); }); $("#back").click(function(){ $(".slideBar").animate({opacity:"hide"},500); if(slideNum == 0){ slideNum = slideCount-1; }else{ slideNum-=1; } setTimeout(function(){ $(".slideBar").eq(slideNum).animate({opacity:"show"},500); }, 500); }); }); |
Боземой а слайдер уже пишет.
Способ раз: (new Array(slideCount)).forEach(function(el, i) { console.log(i+1); });Способ два: for (var i = 1; i <= slideCount; ++i) { console.log(i); } Хотя я что-то не уверен что вам надо было именно число, но в посте конкретики нет. |
спасибо вам большое, работает. знаю, что данная проблема мелочная, но на чём только нельзя застрять) Botik21 заодно может оцените сам скрипт? я далеко не бог в js и хотелось бы услышать критику, по данному "слайду"
|
Интервал пишется в глобальную переменную.
slideNum-=1;декремент же есть Таймауты можно заменить на delay() https://api.jquery.com/delay/ Функции у slideInterval и для next одинаковые – я бы объединил. Значение $(".slideBar") запихать в переменную, чтобы jQ не искал её каждый раз. В остальном для собственного пользования вполне пойдёт Да, и первая строчка не нравится ) jQuery(function($) { |
Спасибо, учту:) я ещё новичок в js, писал слайдер пользуясь арсеналом функций которые знал и написание алгоритма)
|
korih,
Цитата:
var interval = setInterval(slideInterval, 4000); $(".slider").hover(function(){ clearInterval(interval); }, function(){ interval = setInterval(slideInterval, 4000); }); |
var arr = [slideCount]; for(var i=0; i < slideCount; i++){ $(".navSliders").append('<div id="'+i+'" class="numberSlide">'+i+'</div>'); } $(".numberSlide").click(function() { $(".slideBar").animate({opacity:"hide"},0); slideNum = $(this).attr('id'); $(".slideBar").eq(slideNum).animate({opacity:"show"},500); });собственно для чего и нужен был перебор цифр, для навигации) |
А для чего переменная arr?
|
ну да, массив оказался лишним, согласен
|
Часовой пояс GMT +3, время: 05:31. |