Javascript 使用jQuery隐藏/显示元素
我有以下网站结构Javascript 使用jQuery隐藏/显示元素,javascript,jquery,Javascript,Jquery,我有以下网站结构 <div id="movies"> <a href=""> <div>content</div> </a> <a href=""> <div>content</div> </a> ... </div> 但这给了我未捕获的TypeError:对象0没有方法“sh
<div id="movies">
<a href="">
<div>content</div>
</a>
<a href="">
<div>content</div>
</a>
...
</div>
但这给了我未捕获的TypeError:对象0没有方法“show”。你知道为什么吗?我需要更改/添加什么才能使想法生效?您正在使用一些有点奇怪的做法: 不要对第n个子项使用循环;只需使用$movies a.slice10.hide。 使用hidden.eachfunction{…}而不是for in循环。在这里,你也可以使用.slice。 你不需要增加计数;始终为0,因此if子句始终为true。 您不能循环使用。。在里面因为它在属性上循环。在每个方法中使用jQuerys:
hidden.each(function() {
var element = $(this);
if(count <= 10)
element.show();
});
hidden是一个jQuery对象。不要在上面循环使用..in。使用。每个
尝试下面这样一个简单的解决方案
$(function () {
$("#movies a:gt(9)").hide();
var $moviesA = $('#movies a');
$('#more a').click(function(){
var $visibleA = $("#movies a :visible"); //Edit: added a space
$moviesA.slice($visibleA.length, $visibleA.length + 10).show();
});
});
演示:
hidden.each(function(){
if(count <= 10){
$(this).show();
}
});
$(function () {
$("#movies a:gt(9)").hide();
var $moviesA = $('#movies a');
$('#more a').click(function(){
var $visibleA = $("#movies a :visible"); //Edit: added a space
$moviesA.slice($visibleA.length, $visibleA.length + 10).show();
});
});