Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
 Аватар для WebCyber
2 / 2 / 0
Регистрация: 05.09.2015
Сообщений: 68

Отслеживание слайдов для кнопок слайдера

28.12.2015, 00:34. Показов 1715. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите как на jquery сделать отслеживание слайдов для круглых кнопок в слайдере? Ну например если показывается второй слайд то "зажигается" вторая кнопка, если третий то третья и т.д. (пробовал использовать метод toggle, но он не годится потому что если начать нажимать на кнопки а потом тыкать на верхние кнопки то все сбивается) На данный момент кнопки работают только если на них просто нажимать, то показывают нужный по счету слайд, но при прокрутке слайдов кнопками не могу додумать как сделать отслеживание. Ниже мой код слайдера:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>slider</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js" type="text/javascript"></script>
</head>
<body>
<div class="slider">
<input id="but2" type="button" value="<-Назад">
<input id="but1" type="button" value="Вперед->">
 
<div class="container">
    <div id="set">
          <ul id="buttons">
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
    </ul>
</div>  
    <ul id="slider">
            <li id="num1"><img src="http://www.gamer.ru/system/attached_images/images/000/056/619/original/cataclysm_04.jpg"></li>
        <li id="num2"><img src="http://wow.zuggaming.com/wp-content/uploads/wow_pvp.jpg"></li>
        <li id="num3"><img src="http://www.wowjuju.com/uploads/gallery/album_11/gallery_2_11_6599.jpg"></li>
        <li id="num4"><img src="http://aramiskim.ru/uploads/images/hotline_miami_2_unofficial_soundtrack_blizzard.jpg"></li>
        <li id="num5"><img src="http://img2.goodfon.ru/original/800x480/f/8e/wolrd-of-warcraft-legion-wow.jpg"></li>
    </ul>
</div>
</div>
</body>
</html>
CSS
1
2
3
4
5
6
7
8
9
10
11
*{margin:0px; padding:0px;}
html, body{height:100%}
.slider{width:500px; height:auto; margin:auto; text-align:center;}
.container{background-color:#1e1e1e; margin:5px auto; width:500px; height:320px; border:solid 1px black; overflow:hidden}
ul{list-style-type:none;}
ul#slider li{margin-top:-30px; width:500px; height:350px; float:left}
ul#slider li img{width:100%; height:100%}
#set{opacity:0.5; margin:auto; padding-top:5px; position:relative; top:291px; width:100%; background-color:#B9B9B9; height:25px; z-index:5}
ul#buttons{margin:auto; width:150px}
ul#buttons li{transition:background 0.2s linear; border-radius:100%; width:20px; height:20px; background-color:black; margin-left:5px; float:left}
#set:hover{opacity:0.95; cursor:pointer}
JavaScript
1
2
3
4
5
6
7
8
9
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
$(document).ready(function(){
    $("#but1").click(function(){
       a = $("ul#slider li").first();
       $("ul#slider").animate({marginLeft:"500px", opacity:"0"},0);
       $("ul#slider").animate({marginLeft:"0px", opacity:"1"},400);
       $(".container ul#slider").append(a);
   });
   $("#but2").click(function(){
       b = $("ul#slider li").last();
       $("ul#slider").animate({marginLeft:"-500px", opacity:"0"},0);
       $("ul#slider").animate({marginLeft:"0px", opacity:"1"},400);
       $(".container ul#slider").prepend(b);
   });
   
$("ul#buttons").click(function(){
       $("ul#slider").animate({marginLeft:"-500px", opacity:"0"},0);
       $("ul#slider").animate({marginLeft:"0px", opacity:"1"},400);
    });
    $("ul#buttons li:eq(0)").click(function(){
        c = $("ul#slider li#num1");
        $(".container ul#slider").prepend(c);
        $("ul#buttons li:not('li:eq(0)')").css("backgroundColor","black");
        $("ul#buttons li:eq(0)").css("backgroundColor","white");
    });
        $("ul#buttons li:eq(1)").click(function(){
        c = $("ul#slider li#num2");
        $(".container ul#slider").prepend(c);
        $("ul#buttons li:not('li:eq(1)')").css("backgroundColor","black");
        $("ul#buttons li:eq(1)").css("backgroundColor","white");
    });
        $("ul#buttons li:eq(2)").click(function(){
        c = $("ul#slider li#num3");
        $(".container ul#slider").prepend(c);
        $("ul#buttons li:not('li:eq(2)')").css("backgroundColor","black");
        $("ul#buttons li:eq(2)").css("backgroundColor","white");
    });
        $("ul#buttons li:eq(3)").click(function(){
        c = $("ul#slider li#num4");
        $(".container ul#slider").prepend(c);
        $("ul#buttons li:not('li:eq(3)')").css("backgroundColor","black");
        $("ul#buttons li:eq(3)").css("backgroundColor","white");
    });
        $("ul#buttons li:eq(4)").click(function(){
        c = $("ul#slider li#num5");
        $(".container ul#slider").prepend(c);
        $("ul#buttons li:not('li:eq(4)')").css("backgroundColor","black");
        $("ul#buttons li:eq(4)").css("backgroundColor","white");
    });
 
 
});
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.12.2015, 00:34
Ответы с готовыми решениями:

Отслеживание кнопок
Добрый вечер пятницы ) Никогда с таким не сталкивался раньше Есть landing и по всему лэндингу около 10 кнопок которые ведут на...

Скорость смены слайдов слайдера Бутстрап
Здравствуйте! Подскажите, пожалуйста, как изменить скорость смены слайдов слайдера Бутстрап. Добавлено через 1 час 59 минут Вопрос...

Удаление кнопок со слайдов Powerpoint
Задача такая: В слайде 5 есть кнопка, после нажатия которой будет удалена кнопка 3 из слайда 2. Как это вообще написать? Есть в экселе там...

5
 Аватар для AmateR62
118 / 118 / 87
Регистрация: 24.02.2014
Сообщений: 404
28.12.2015, 13:49
Как то криво кнопки вперед - назад работают...
А вам именно самописный слайдер нужен? owl.carousel позволяет так реализовать слайдер - http://owlcarousel.owlgraphic.... shnav.html

А если самописный... нужно определять какая картинка сейчас активна и подсвечивать нужную кнопку... кнопкам тоже идентификаторы присвойте

Добавлено через 9 минут
Например вот так:
HTML5
1
2
3
4
5
6
7
8
<div id="set">
      <ul id="buttons">
        <li class="num1"></li>
        <li class="num2"></li>
        <li class="num3"></li>
        <li class="num4"></li>
        <li class="num5"></li>
    </ul>
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$("#but1").click(function(){
       a = $("ul#slider li").first();
       $("ul#slider").animate({marginLeft:"500px", opacity:"0"},0);
       $("ul#slider").animate({marginLeft:"0px", opacity:"1"},400);
       $(".container ul#slider").append(a);
      $("ul#buttons li").css("backgroundColor","black");
       $('.'+$("ul#slider li").attr("id")).css("backgroundColor","white");
   });
   $("#but2").click(function(){
       b = $("ul#slider li").last();
       $("ul#slider").animate({marginLeft:"-500px", opacity:"0"},0);
       $("ul#slider").animate({marginLeft:"0px", opacity:"1"},400);
       $(".container ul#slider").prepend(b);
     $("ul#buttons li").css("backgroundColor","black");
       $('.'+$("ul#slider li").attr("id")).css("backgroundColor","white");
   });
http://codepen.io/anon/pen/EPNYmP

Я думаю принцип понятен - более красивое решение тогда сами сделаете)
0
 Аватар для WebCyber
2 / 2 / 0
Регистрация: 05.09.2015
Сообщений: 68
01.01.2016, 12:49  [ТС]
AmateR62, а каким способом дать понять какая картинка(слайд) активна?

Добавлено через 11 часов 34 минуты
AmateR62, да мне собственно на данный момент слайдер как таковой вообще не нужен, я просто хочу научиться его делать, видел большое количество вариантов кода слайдеров, но не все они мне понятны, хочу сделать сам. Ну и собственно как видите перебор слайдов и анимационное сопровождение сделал, вообщем то тут не сложно, главное понимать некотрые нюансы HTML свойств и методов append - prepend а остальное дело техники. Анимацию можно любую приделать мне лично больше нравится fadeIn-fadeOut но тут решил сделать по типу выдвижения слайдов.
А что именно криво работает в кнопках?
0
 Аватар для WebCyber
2 / 2 / 0
Регистрация: 05.09.2015
Сообщений: 68
11.01.2016, 10:39  [ТС]
Какой функцией можно дать понять браузеру какой слайд активен?
0
 Аватар для AmateR62
118 / 118 / 87
Регистрация: 24.02.2014
Сообщений: 404
11.01.2016, 12:01
В моем решении в этой строке
JavaScript
1
$('.'+$("ul#slider li").attr("id")).css("backgroundColor","white");
получаем id текущего слайдера
JavaScript
1
$("ul#slider li").attr("id")
потом ищем красим в белый цвет кнопку с таким классом

Если сделать в несколько строк, более наглядно:
JavaScript
1
2
var selectImgID = $("ul#slider li").attr("id");
$('.'+selectImgID).css("backgroundColor","white");
0
 Аватар для WebCyber
2 / 2 / 0
Регистрация: 05.09.2015
Сообщений: 68
12.01.2016, 12:38  [ТС]
Если нажимать на верхние кнопки Назад - Вперед то да, нижние круглые кнопки окрашиваются в нужный цвет, каждая согласно номеру слайда, но если начать нажимать на круглые кнопки а потом на верхние то все сбивается.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.01.2016, 12:38
Помогаю со студенческими работами здесь

Подключение кнопок слайдера
Подскажите, у меня есть маркеры слайдера и еще есть стрелки на слайдере. Как к стрелкам подключить данные маркеры? Что бы при нажатии на...

Изменить позицию кнопок слайдера
Здравствуйте! На страничке есть блок под названием &quot;Популярные товары&quot;. Страница популярных товаров (если не заходит то зайдите...

Подсветка кнопок навигации слайдера
Помогите пожалуйста уважаемые форумчане! Весь интернет облазял чтобы понять, но понять так и не получилось. Слайдер работает замечательно...

Отслеживание нажатых кнопок
Здравствуйте! Помогите пожалуйста разобраться : на форме есть несколько кнопок, как сделать, чтобы в поле выводилась информация о нажатой...

DataGridView. Отслеживание нажатия кнопок
Всем привет. Столкнулся с такой проблемой. У меня на форме есть датагридвью, на котором первая колонка это баттоны. Не могу понять, каким...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru