2017-09-01 46 views
-5

我想使用查看更多,并查看更少的按钮按钮为我> UL>李,我使用下面的代码,但它不工作。查看相关按钮

$(document).ready(function() { 
    var list = $(".partners__ul li"); 
    var numToShow = 4; 
    var button = $(".partners__button__a"); 
    var numInList = list.length; 
    list.hide(); 
    if (numInList > numToShow) { 
    button.show(); 
    } 
    list.slice(0, numToShow).show(); 
    button.click(function() { 
    var showing = list.filter(':visible').length; 
    list.slice(showing - 1, showing + numToShow).fadeIn(); 
    var nowShowing = list.filter(':visible').length; 
    }); 
}); 
+1

你可以定义 “_its不working._”?它是否会崩溃,产生意想不到的结果,什么都不做? – litelite

+2

它可能会扔石头邻居的窗户... – Teemu

+0

请在jsfiddle.net创建一个小提琴,所以我们可以帮助你更好。 –

回答

0

希望以下代码将帮助你。

$(document).ready(function() { 
 
    var list = $(".partners__ul li"); 
 
    var numToShow = 4; 
 
    var button = $(".partners__button__a"); 
 
    var numInList = list.length; 
 
    var isShowing = true; 
 
    list.hide(); 
 
    if (numInList > numToShow) { 
 
    button.show(); 
 
    } 
 
    list.slice(0, numToShow).show(); 
 
    button.click(function() { 
 
    var showing = list.filter(':visible').length; 
 
    if(isShowing){ 
 
     list.slice(showing - 1, showing + numToShow).fadeIn(100,onFadeComplete); 
 
    } 
 
    else{ 
 
     list.slice(showing - numToShow, numInList).fadeOut(100,onFadeComplete); 
 
    } 
 
    
 
    
 
    }); 
 
    
 
    function onFadeComplete(){ 
 
    var nowShowing = list.filter(':visible').length; 
 
    
 
    if(nowShowing == numInList && isShowing){ 
 
     isShowing = false; 
 
     button.text("Show less"); 
 
    } 
 
    else if(isShowing){ 
 
     button.text("Show even more"); 
 
    } 
 
    
 
    if(nowShowing == numToShow){ 
 
     button.text("Show more"); 
 
     isShowing = true; 
 
    } 
 
    
 
    } 
 
});
.partners__ul { 
 
    list-style: none; 
 
    padding: 0; 
 
    margin: 0; 
 
} 
 
.partners__ul li { 
 
    position: relative; 
 
    margin-bottom: 10px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="wrapper"> 
 
    <ul class="partners__ul"> 
 
    <li>Item 1</li> 
 
    <li>Item 2</li> 
 
    <li>Item 3</li> 
 
    <li>Item 4</li> 
 
    <li>Item 5</li> 
 
    <li>Item 6</li> 
 
    <li>Item 7</li> 
 
    <li>Item 8</li> 
 
    <li>Item 9</li> 
 
    <li>Item 10</li> 
 
    <li>Item 11</li> 
 
    <li>Item 12</li> 
 
    </ul> 
 
    <button class="partners__button__a">Show More</button> 
 
</div>

+2

我认为如果你的答案是解释你的代码,你会得到较少的赞誉...你可以在答案中和/或在代码中使用评论。 –

+0

感谢它的工作 – samparker1234