2011-05-25 73 views
5

我需要在<a>标签内附加img。我一直在抨击这一点,没有决心,让我发疯。如果你能帮上忙,那会很棒。我使用jQuery 1.5jquery append img和

while condition{ 
    $("<img>").attr("src", thumb).appendTo("#images"); 
} 

最终结果应该是:

<a href="#"><img src="xxxxx"></a> 

当我使用前置或后置appendto我得到这样的结果:

<div id="images src="xxxxxxx"><a></a> 
OR 
<a href="#"></a><img src="xxxxx"> 

感谢您的任何援助。

+0

尝试使用'$(” ').appendTo(' #图像');'而是。 – Alxandr 2011-05-25 19:20:48

+1

你在用while循环做什么? – Cristy 2011-05-25 19:21:49

+0

可以看到完整的HTML请求 – mcgrailm 2011-05-25 19:21:59

回答

8
$("#images").append($("<a>", 
{ 
    href: "#", 
    html: $("<img>", { src: thumb }) 
})); 

工作示例:http://jsfiddle.net/hunter/Rxkxg/

+1

有趣的短手,我不知道你可以传递一个对象作为第二个参数并填充它。 – 2011-05-25 19:28:13

+0

++我同意@Brad。我不知道:) – Sampson 2011-05-25 19:29:23

+0

尽可能多的代表你们两个都知道这一点?我觉得这很有趣。 – 2011-05-25 20:26:05

6
$('<a>') // create anchor first 
    .attr('href','#') // set anchor HREF attribute 
    .append(// inside it, append an image 
    $('<img>') // new image 
     .attr('src',thumb) // set image SRC attribute 
) // end append 
    .appendTo('#images') // add to image body 

几乎走上了正轨......

demo

+0

@Scott:可选,因为选择器实际上只是查看它需要的“document.createElement”标签。 @汤姆:不客气。是的,jsFiddle是一个很棒的网站。 ;-) – 2011-05-25 19:27:20