我有:
<li class="ingredient">
<div>
<span class="amount">1 lb</span>
<span class="name">asparagus</span>
</div>
我想使用jQuery来获取:
<li class="ingredient">
<img class="myImage" title="Yes!!! asparagus" src="/white2x2.gif">
<div>
<span class="amount">1 lb</span>
<span class="name">asparagus</span>
</div>
到目前为止,我得到了:
$(".ingredient div").before("<class='myImage' src="/white2x2.gif' />");
但如何在那里获得标题。请注意,页面上有很多这些,我希望标题代表元素。
非常感谢!
答案 0 :(得分:2)
根据您的意见,这应该为您做。
$('.ingredient div').each(function() {
var name = $(this).find('.name').text();
$(this).before($('<img />').attr({class:'myimage', src:'/white2x2.gif',title:name}));
});
这是一个jsfiddle
答案 1 :(得分:0)
尝试:
var newDiv = $("<img />").attr('src','/white2x2.gif').attr('class','myImage').attr('title','Yes!!! asparagus');
$(".ingredient div").before(newDiv);
答案 2 :(得分:0)
如果您尝试使用范围中的文字作为标题:
var name = $('.ingredient').find('.name').text();
$('.ingredient div').before($('<img />').attr('class','myImage').attr('src','/white2x2.gif').attr('title', name);
答案 3 :(得分:0)
您可以使用jQuery .prepend()
:
$(document).ready(function(){
$.each($(document).find("li.igredient"), function(){
img_title = $(this).find('.name').text();
$(this).prepend("<img class='myImage' src='/white2x2.gif' title='" + img_title + "' />");
});
});