Jquery 如何使用附加div?

Jquery 如何使用附加div?,jquery,Jquery,我是jquery的新手,所以请原谅我缺乏知识,我如何使用我在这里添加的元素来做任何事情?例如,我想在附加这些元素时隐藏除第一个“.biger”之外的所有元素。谢谢 function loadXML() { $.ajax({ type: "GET", url: XML_PATH, dataType: "xml", success: function(xml){ $

我是jquery的新手,所以请原谅我缺乏知识,我如何使用我在这里添加的元素来做任何事情?例如,我想在附加这些元素时隐藏除第一个“.biger”之外的所有元素。谢谢

function loadXML()
{
    $.ajax({
            type: "GET",
            url: XML_PATH,
            dataType: "xml",
            success: function(xml){
                $(xml).find('item').each(function(){
                    var id = $(this).attr('id');
                    var images = $(this).find('large').text();
                    var thumbs = $(this).find('thumb').text();
                    var descs = $(this).find('description').text();
                    $('<div class="thumber" id="thumb_'+id+'" rel="large_'+id+'" style="background-image: url('+thumbs+')"></div>').appendTo('#thumbslide');
                    $('<div class="larger" id="large_'+id+'" style="background-image: url('+images+')"></div>').appendTo('#view');
                });
    });
函数loadXML()
{
$.ajax({
键入:“获取”,
url:XML\u路径,
数据类型:“xml”,
成功:函数(xml){
$(xml).find('item').each(function(){
var id=$(this.attr('id');
var images=$(this.find('large').text();
var thumbs=$(this.find('thumb').text();
var descs=$(this.find('description').text();
$(“”).appendTo(“#拇指幻灯片”);
$(“”).appendTo(“#视图”);
});
});

该方法的回调函数实际上有两个参数,即当前索引和当前dom元素:

.each(function(index, element))
您可以在创建图元时执行此操作:

$('<div class="larger" id="large_'+id+'" style="background-image: url('+images+')"></div>')
// apply css 'block' for first item, otherwise 'none' to hide
.css('display', index === 0 ? 'block' : 'none')
.appendTo('#view')
$(“”)
//对第一项应用css“block”,否则隐藏“none”
.css('display',index==0?'block':'none')
.appendTo(“#视图”)

该方法的回调函数实际上有两个参数,即当前索引和当前dom元素:

.each(function(index, element))
您可以在创建图元时执行此操作:

$('<div class="larger" id="large_'+id+'" style="background-image: url('+images+')"></div>')
// apply css 'block' for first item, otherwise 'none' to hide
.css('display', index === 0 ? 'block' : 'none')
.appendTo('#view')
$(“”)
//对第一项应用css“block”,否则隐藏“none”
.css('display',index==0?'block':'none')
.appendTo(“#视图”)

以下是隐藏所有“.biger”元素(第一个除外)的代码:

$(".larger").not(":first").hide();

下面是隐藏除第一个“.biger”元素以外的所有“.biger”元素的代码:

$(".larger").not(":first").hide();

首先,执行$(this)4次没有任何意义。这样做会降低代码的速度。存储/缓存它会更高效

var$this=$(this);

要做你想做的事你可以做这样的事

$.ajax({
        type: "GET",
        url: XML_PATH,
        dataType: "xml",
        success: function(xml){
            var first = true;
            $(xml).find('item').each(function(){
                var $this = $(this);
                var id = $this.attr('id');
                var images = $this.find('large').text();
                var thumbs = $this.find('thumb').text();
                var descs = $this.find('description').text();
                $('<div class="thumber" id="thumb_'+id+'" rel="large_'+id+'" style="background-image: url('+thumbs+')"></div>').appendTo('#thumbslide').toggle(!first);
                $('<div class="larger" id="large_'+id+'" style="background-image: url('+images+')"></div>').appendTo('#view').toggle(!first);
                first = false;
            });
});
$.ajax({
键入:“获取”,
url:XML\u路径,
数据类型:“xml”,
成功:函数(xml){
var first=真;
$(xml).find('item').each(function(){
var$this=$(this);
var id=$this.attr('id');
var images=$this.find('large').text();
var thumbs=$this.find('thumb').text();
var descs=$this.find('description').text();
$('').appendTo('#thumbsiled').toggle(!first);
$('').appendTo('#view').toggle(!first);
第一个=假;
});
});

使用jQuery,您可以继续链接操作。

首先,执行$(this)4次没有意义。这样做会降低代码的速度。存储/缓存它会更高效

var$this=$(this);

要做你想做的事你可以做这样的事

$.ajax({
        type: "GET",
        url: XML_PATH,
        dataType: "xml",
        success: function(xml){
            var first = true;
            $(xml).find('item').each(function(){
                var $this = $(this);
                var id = $this.attr('id');
                var images = $this.find('large').text();
                var thumbs = $this.find('thumb').text();
                var descs = $this.find('description').text();
                $('<div class="thumber" id="thumb_'+id+'" rel="large_'+id+'" style="background-image: url('+thumbs+')"></div>').appendTo('#thumbslide').toggle(!first);
                $('<div class="larger" id="large_'+id+'" style="background-image: url('+images+')"></div>').appendTo('#view').toggle(!first);
                first = false;
            });
});
$.ajax({
键入:“获取”,
url:XML\u路径,
数据类型:“xml”,
成功:函数(xml){
var first=真;
$(xml).find('item').each(function(){
var$this=$(this);
var id=$this.attr('id');
var images=$this.find('large').text();
var thumbs=$this.find('thumb').text();
var descs=$this.find('description').text();
$('').appendTo('#thumbsiled').toggle(!first);
$('').appendTo('#view').toggle(!first);
第一个=假;
});
});

使用jQuery,您可以继续进行链式操作。

我认为
。hide(!first)
不正确。函数的参数是一个持续时间,用于设置隐藏动画,而不是一个布尔值来隐藏或不隐藏()。你是对的,我已经更新了我的代码,改为使用toggle。感谢你的帮助,这很有用。但是,我设计了一些更大的东西。我想要一种全局访问附加内容的方法,我真正希望能做的是使用一个id选择器,相当于使用$(“#large"+I)。有没有办法使附加元素与dom元素一样可用?我认为
.hide(!first)
不正确。函数的参数是一个持续时间,用于设置隐藏动画,而不是一个布尔值来隐藏或不隐藏()。你是对的,我已经更新了我的代码,改为使用toggle。感谢你的帮助,这很有用。但是,我设计了一些更大的东西。我想要一种全局访问附加内容的方法,我真正希望能做的是使用一个id选择器,相当于使用$(“#large"+I)。是否有一种方法可以使附加元素与dom元素一样可行?感谢您的帮助,这很有用。但是,我有设计使其更大。我希望有一种方法可以全局访问附加内容,我真正希望能够使用id选择器,这相当于使用$(“#large_uu”+I)。是否有一种方法可以使附加元素与dom元素一样可行?感谢您的帮助,这很有用。但是,我有设计使其更大。我希望有一种方法可以全局访问附加内容,我真正希望能够使用id选择器,这相当于使用$(“#large_uu”+I).有没有办法使附加元素与dom元素一样可行?