Javascript jQuery show()不是函数-用于添加DOM元素
我正在从PrototypeJS迁移到jQuery,在将功能应用到添加到简单横幅脚本中的新DOM元素时遇到了问题 基本上,在页面加载时,使用append()将新的DIV元素放置到DOM中,据我所知,这是在jQuery中完成的,而不是在Prototype的元素对象中完成的Javascript jQuery show()不是函数-用于添加DOM元素,javascript,jquery,dom,Javascript,Jquery,Dom,我正在从PrototypeJS迁移到jQuery,在将功能应用到添加到简单横幅脚本中的新DOM元素时遇到了问题 基本上,在页面加载时,使用append()将新的DIV元素放置到DOM中,据我所知,这是在jQuery中完成的,而不是在Prototype的元素对象中完成的 $.each(Banner.data, function(i, e) { $('#banner_area').append("<div class='banner_slot' id='bannner-"+ i +"'&g
$.each(Banner.data, function(i, e) {
$('#banner_area').append("<div class='banner_slot' id='bannner-"+ i +"'>...[nested elements]</div>").hide();
});
$('.banner_slot').get(0).show();
我相信这很简单,因为我已经使用Prototype很多年了,但需要转到jQuery,因为。。。更多的人使用它,因此资源会无限好
这两者之间有什么基本的区别吗?我在这里没有提到。您需要更新
$('.banner_slot').get(0).show();
到
注意:get()
提供了一个DOM元素,并且show()
适用于jQuery对象,因此需要将其转换为jQuery对象才能使用该函数
$('.banner_slot').get(0).show();
改为
$('.banner_slot').eq(0).show();
.get()
返回DOM元素,.eq()
返回jQuery对象,.show()
是jQuery API
有关
.get()
和.eq()
的详细信息,请签出$('.banner\u slot').get(0).show()
,尝试使用$('.banner\u slot')[0]。show()
使用正确的方法,只需将get
替换为eq
,我假定这是因为您有一个jQuery对象,您可以使用它来获取一个domeElement,然后再次将其返回到jQuery对象,而您可以使用eq()
@rorymcrossan-我同意。我想强调这个问题,然后添加注释。@vinayakj-我同意,正如我所说的,我想强调这个问题。谢谢!对此需要有一个更为明显的解释。我希望jQuery也能处理DOM元素,而不是造成这些令人困惑的错误。
$('.banner_slot').get(0).show();
$('.banner_slot').eq(0).show();