#javascript #html #filter #element
#javascript #HTML #Фильтр #элемент
Вопрос:
Когда я нахожусь на главной странице, сначала отображается все, что помечено как «все». Вместо этого я хочу, чтобы все, помеченное как «основные моменты», отображалось по умолчанию (но затем, если щелкнуть другую категорию, я хочу, чтобы она отображалась, что в настоящее время работает нормально). У меня очень ограниченный опыт программирования, и я никогда раньше не пользовался этим сайтом, но обычно я могу решить проблемы методом проб и ошибок. Это поставило меня в тупик!
Вот мой HTML:
<div class="container">
<div class="section-title text-center">
<h2>MY WORK</h2>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-md-12">
<div class="portfolio-list">
<ul class="nav list-unstyled" id="portfolio-flters">
<li class="filter filter-active" data-filter=".highlights">Highlights</li>
<li class="filter" data-filter=".crime">Crime</li>
<li class="filter" data-filter=".events">Events</li>
<li class="filter" data-filter=".sga">SGA</li>
<li class="filter" data-filter=".podcast">Podcasts</li>
<li class="filter" data-filter=".wkyt">WKYT</li>
<li class="filter" data-filter=".wuog">WUOG 90.5 FM</li>
<li class="filter" data-filter=".video">Video</li>
<li class="filter" data-filter=".all">All</li>
</ul></div>
И мой js:
$(window).load(function(){
var portfolioIsotope = $('.portfolio-container').isotope({
itemSelector: '.portfolio-thumbnail',
layoutMode: 'fitRows'
});
$('#portfolio-flters li').on( 'click', function() {
$("#portfolio-flters li").removeClass('filter-active');
$(this).addClass('filter-active');
portfolioIsotope.isotope({ filter: $(this).data('filter') });
});
})
Комментарии:
1. После назначения обработчиков кликов вашим фильтрам, используйте
$('#portfolio-flters li').eq(0).click()
для «щелчка» по первому.2. Это сработало! Большое вам спасибо!!