Javascript jQuery for循环未运行函数
我试图在jQuery中创建一个循环,根据元素的“caption”属性的值查找所有的“img”元素并在它们下面放置一个标题。每当我运行下面的循环时,我在任何图像下都没有标题Javascript jQuery for循环未运行函数,javascript,jquery,html,for-loop,Javascript,Jquery,Html,For Loop,我试图在jQuery中创建一个循环,根据元素的“caption”属性的值查找所有的“img”元素并在它们下面放置一个标题。每当我运行下面的循环时,我在任何图像下都没有标题 for (var i = 0; i < $('.myimage').length; i++) { $('.myimage')[i].after('<h6>' + $('.myimage').attr('caption') + '</h6>'); }; for(var i=0;i
for (var i = 0; i < $('.myimage').length; i++) {
$('.myimage')[i].after('<h6>' + $('.myimage').attr('caption') + '</h6>');
};
for(var i=0;i<$('.myimage')。长度;i++){
$('.myimage')[i]。在('+$('.myimage').attr('caption')+''之后;
};
但是,当我运行此代码时
$('.myimage').after('<h6>TEST</h6>');
$('.myimage')。在('TEST')之后;
“测试”一词出现在所有图像下方。因此,我知道我的html是正确的,我没有打字错误,选择器正在工作,我只是无法让for循环工作。。。我做错了什么 $('.myimage')[i]
返回一个DOM元素(不是jQuery对象),因此在方法之后没有。如果要循环,只需使用。每个
$(".myimage").each(function() {
//this refers to each image
$(this).after('<h6>' + $(this).attr('caption') + '</h6>');
});
$(“.myimage”)。每个(函数(){
//这是指每个图像
$(this).after(“”+$(this).attr('caption')+“”);
});
$('.myimage')[i]
返回一个DOM元素(不是jQuery对象),因此
方法之后没有。如果要循环,只需使用。每个
$(".myimage").each(function() {
//this refers to each image
$(this).after('<h6>' + $(this).attr('caption') + '</h6>');
});
$(“.myimage”)。每个(函数(){
//这是指每个图像
$(this).after(“”+$(this).attr('caption')+“”);
});
您可以使用.after()
的回调函数,像这样遍历.myimage
元素
$('.myimage').after(function(){
return '<h6>' + $(this).attr('caption') + '</h6>';
});
$('.myimage')。在(函数()之后{
返回“”+$(this.attr('caption')+“”;
});
一个小提示,不要编造你自己的属性。改用自定义数据属性,如data caption=“something”
您可以使用.after()
的回调函数,像这样遍历.myimage
元素
$('.myimage').after(function(){
return '<h6>' + $(this).attr('caption') + '</h6>';
});
$('.myimage')。在(函数()之后{
返回“”+$(this.attr('caption')+“”;
});
一个小提示,不要编造你自己的属性。改用自定义数据属性,如data caption=“something”
啊,谢谢你,这真是一次享受!我没有意识到$('.myimage')[I]会返回一个DOM对象:P@thatsimplekid--是的-您可能最终会看到类似于$(“#myID”)[0]
的内容-这与文档相同。getElementById(“myID”)
啊,谢谢,这很有效!我没有意识到$('.myimage')[I]会返回一个DOM对象:P@thatsimplekid--是的-您可能最终会看到类似于$(“#myID”)[0]
的内容-这与文档相同。getElementById(“myID”)