2016-03-12 2 views
3

Так у меня есть эта структура:спаренные неупорядоченные

<ul> 
     <li class="paginator"><a class="active">1</a></li> 
     <li class="paginator"><a>2</a></li> 
     <li class="paginator"><a>3</a></li> 
    </ul> 
    ... bunch of html code 
    <ul> 
     <li class="paginator"><a class="active">1</a></li> 
     <li class="paginator"><a>2</a></li> 
     <li class="paginator"><a>3</a></li> 
    </ul> 

Что неупорядоченные якоря, каждый раз, когда пользователь нажимает на якоре становится от активных класса. Мой вопрос: какой лучший способ дублировать этот эффект на обоих якорях. Пока, когда я нажимаю на якорь 2 дна, он успешно получает класс , но якорь 2 вершины нет. Есть ли способ иметь что-то вроде близнецов или клонированных элементов?

+0

Можем ли мы спрятаться? –

+2

Я думаю, вы должны показать нам немного вашего js/jquery. –

+3

Вы имеете в виду вот это -> ** https: //jsfiddle.net/s7bekp23/** – adeneo

ответ

2

Вы можете получить индекс щелкнули li.paginator элемента, и установить активный класс к любому другому li.paginator с тем же индексом, используя nth-child, таким образом класс будет добавлен как UL-х

var lis = $('.paginator').on('click', function(e) { 
 
\t e.preventDefault(); 
 
    var idx = $(this).closest('li').index(); 
 
    
 
\t lis.find('a').removeClass('active'); 
 
    lis.filter(':nth-child('+(idx+1)+')').find('a').addClass('active'); 
 
});
a {cursor : pointer} 
 
a.active { 
 
    text-decoration: underline; 
 
    color: red!important; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<ul> 
 
     <li class="paginator"><a class="active">test 1</a></li> 
 
     <li class="paginator"><a>test 2</a></li> 
 
     <li class="paginator"><a>test 3</a></li> 
 
    </ul> 
 
    <!-- ... bunch of html code --> 
 
    <ul> 
 
     <li class="paginator"><a class="active">test 1</a></li> 
 
     <li class="paginator"><a>test 2</a></li> 
 
     <li class="paginator"><a>test 3</a></li> 
 
    </ul>

0

Если вы установите его, как это должно работать одинаково для обоих ул элементов, если вы не желаете, элементы для отражения друг друга:

$('.paginator').click(function(){ $(this).find('a').addClass("active") }); 
+0

Точно, я пытаюсь отразить эффект –

Смежные вопросы