我在无序列表中有一些链接列表,就像这样。
<div ="HomeRecentBlogs">
<ul>
</li>
<li><a href="item1.html">Item1</a></li>
<li><a href="item2.html">Item2</a></li>
<li><a href="item3.html">Item3</a></li>
</ul>
</div>
我正在尝试编写一个脚本,该脚本将进入每个链接页面并抓取图像并将其附加到列表项。
$('#HomeRecentBlogs ul li').each(function(index, element){
var link = $(element).find('a').attr('href');
$.get( link, function( data ) {
thumb = $(data).find('.PostBody img:first').attr('src');
$(element).append('<a class="thumb"><img="'+ thumb +'" /></a>'); // This is the problem line
});
});
问题在于,在我生成的代码中,每个列表项都如下所示:
<li>
<a href="item1.html">Item1</a>
<a class="thumb"><img="test.jpg></img></a>
</li>
我很确定上面标记的行是导致问题的行
答案 0 :(得分:1)
我认为您希望<img src="test.jpg"/>
不是<img="test.jpg>
所以你需要改变:
$(element).append('<a class="thumb"><img="'+ thumb +'" /></a>');
为:
$(element).append('<a class="thumb"><img src="'+ thumb +'" /></a>');
答案 1 :(得分:0)
您错过了src
attribute
$(element).append('<a class="thumb"><img="'+ thumb +'" /></a>');
//--------------------------------------^
相反,您正在构建一个包含<img="someurl">
的字符串,该字符串无效。您想使用<img src="' + thumb + '" />...
答案 2 :(得分:0)
您需要为图片提供src
属性,因此请使用:
<img src="'+ thumb +'" />
而不是:
<img="'+ thumb +'" />
在append()
功能中。