Обратиться к предыдущему элементу
Помогите обратится к предыдущему элементу
<li .current></li> <li></li> <li></li> <li></li> при нажатии на <span class="next">вперед</span> у меня меняется на <li ></li> <li.current></li> <li></li> <li></li> и т.д. Как сделать только у предыдущего li менялось css? $(document).ready(function(){ var $curr = $(".current"); $curr.css("background", ""); $(".next").click(function () { $curr = $curr.next(); $("li").css("background", "yellow"); $curr.css("background", ""); }); }); |
Перед выполнением шестой строчки в $curr находится как раз "предыдущий" li. И что-то по коду не видно чтобы класс .current передавался следующему li. И вобще - зачем возиться с css в коде, когда можно оформить все в css-файле через селектор .current ?
|
При нажатии на span передается класс current следующему li
(function($) { (function($) { $(function() { $('ul.tabs').on('click', 'li:not(.current)', function() { $(this).addClass('current').siblings().removeClass('current') .parents('div.section').find('div.box').eq($(this).index()).fadeIn(150).siblings('div.box').hide(); }) }) })(jQuery) |
Ну вот, бери теперь
|
мне нужно , чтобы когда current перешел на вторую li , то первая li стала желтого цвета, а когда current на 3 li , то вторая li тоже стала бы желтой. Ну и обратно тоже можно.
|
Вот почти что мне нужно .
Но на втором шаге он следующий элемент перекрашивает( $(document).ready(function(){ var $curr = $(".current"); $curr.css("color", "#cb2a34"); $(".step_next").click(function () { $curr = $curr.next(); $(".tabs li").prev().css("color", "#09e8f5"); $curr.css("color", "#cb2a34"); }); }); |
Blackmore1991,
:cray: :write: вариант кнопок вперёд назад <!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>demo</title> <script type='text/javascript' src='http://code.jquery.com/jquery-1.8.3.js'></script> <style type='text/css'> li.current { background-color: #FFFFFF; } li{ background-color: #FFFF00; } div.next, div.prev{ width: 50px; float: left; cursor:pointer; } </style> <script type='text/javascript'> $(window).load(function(){ $(".next, .prev").click(function () { var $curr = $(".current"); $curr.removeClass('current'); var go = $(this).text(); $curr = $curr[go]().size()? $curr[go]() : $curr[(go=='next'?'prev':'next')+'All'](':last'); $curr.addClass('current'); }); }); </script> </head> <body> <div> <ul class='menu'> <li class="current"> 1 </li> <li> 2 </li> <li> 3 </li> <li> 4 </li> <li> 5 </li> </ul> </div> <div class='next'>next</div> <div class='prev'>prev</div> </body> </html> |
Цитата:
$(".step_next").click(function () { $curr.removeClass('current'); $curr = $curr.next(); $curr.addClass('visited'); }); А желтый добавишь в css. |
Часовой пояс GMT +3, время: 03:57. |