我目前正在使用API调用照片库从Flickr中提取照片。单击主图像后,应该使用较小的尺寸将其附加到“ recentlyViewed” div中。现在,此功能的一部分有效,在单击时它确实会附加到div,但是在单击下一个图像时,最近查看的第一个图像将替换为第二个图像。
$('figure').each(function(index){ // Select all figures using .each
$(this).click(function(){ // register this(figure).click(ed) on
$('recentlyViewed').html($(this).attr('src', $(this).attr('data-square')));
});
});
所以就像我说的,它只是没有附加到元素上。我试过使用.append和.appendTo,但似乎并没有影响它。任何帮助将不胜感激!
答案 0 :(得分:0)
我们需要看到的不止于此;我们需要能够重现该问题。
而且您不在脚本中的任何地方使用index
关键字!
话虽如此,我必须强调以下内容不是真正的解决方案。
因为我不使用jQuery,所以我将尝试为您演示使用纯JavaScript(也被重新命名为Vanilla)的可能解决方案。
[].slice.call(
document.querySelectorAll('figure')
).
forEach(
function( x ) {
x.onclick = function( ) { /*reg fig clicked here*/
recentlyViewed.innerHTML =
this.getAttribute('src')+", "+ this.getAttribute('data-square');
};
}
);
我们在这里假设:: 1.一个点击的图形应该获得一个点击事件注册,该注册事件链接到一个功能,该功能大概是: 1.a)放弃其内容网址,以及一些自定义的数据正方形属性内容。 2.还假定“ recentlyViewed”是要覆盖的HTML目标内容的ID。