在首页上显示已过滤的内容,而不是显示所有内容

时间:2017-09-27 10:55:59

标签: javascript jquery html filter

我还不熟悉jquery。根据我的代码,用户可以通过点击"类别1"来过滤内容。或"类别2"并且对内容进行了分页。

目前,我的代码显示了第一页和其余页面上的所有内容。我想要的是起始页面显示"类别1"仅限内容,无需点击任何按钮/链接。

我想要的结果如下所示:第1,2,3,4,5,6,13和14项属于"类别1"

enter image description here

希望你们中的一些人可以给我一些建议。谢谢!



var visible = "";
var liToShow = $('li');
$('div.filter').delegate('a', 'click', function (event) {
  visible = '.' + this.href.slice(this.href.indexOf("#") + 1);
$('ul.items li').hide();
$(visible).show();
liToShow = $(visible);
pagination();
  event.preventDefault();
});

pageSize = 8;
var i = 1;
showPage = function(page) {
$("li").hide();
$("li").each(function(n) {
    if (n >= pageSize * (page - 1) && n < pageSize * page)
        $(this).show();
});        
}

showPage(i);

function pagination(action) {

var pages = Math.ceil(liToShow.length / pageSize);
$('#pager').html("");
for (var i = 0; i<pages; i++) {
   $('#pager').append('<a href="#" class="pageClick">'+(i+1)+'</a> &nbsp;');
}
$('.pageClick').on('click', function(e) {
   e.preventDefault();
   showPage($(this).index()+1);
});

}

pagination();
&#13;
ul{list-style: none;}

#item-wrapper {
 width:250px;   
 margin:30px 0 0 30px;
}
.items li {
 font-family:arial;
font-size:13px;
 background-color:#ccc;
margin-bottom:1px; 
padding:5px;    
}
.ctrl-nav {
    background-color:#999;
    padding:5px;
    overflow:hidden;
}
.ctrl-nav a {
    font-family:arial;
font-size:13px;
    padding:5px 10px;
    color:#fff;
}
.ctrl-nav a#prev{
 float:left;   
}
.ctrl-nav a#next{
 float:right;   
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="filter">
    <a href="#category-1">category 1</a>
    <a href="#category-2">category 2</a>
</div>

<div id="item-wrapper">
<ul class="items">
    <li class="category-1">item 1</li>
    <li class="category-1">item 2</li>
    <li class="category-1">item 3</li>
    <li class="category-1">item 4</li>
    <li class="category-1">item 5</li>
    <li class="category-1">item 6</li>
    <li class="category-2">item 7</li>
    <li class="category-2">item 8</li>
    <li class="category-2">item 9</li>
    <li class="category-2">item 10</li>
    <li class="category-2">item 11</li>
    <li class="category-2">item 12</li>
    <li class="category-1">item 13</li>
    <li class="category-1">item 14</li>
    <li class="category-2">item 15</li>
</ul>

<div id="pager"></div>
</div>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:1)

只需点击Category#1点击文档就绪方法,就像这样

$(document).ready(function(){
   $('div.filter a:first-child').trigger('click');
});
相关问题