Обратиться к предыдущему элементу
Помогите обратится к предыдущему элементу
<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, время: 08:22. |