我有以下标记:
<div class="user-photo">
<img src="" />
</div>
当我点击页面上的其他图像时,我想在该div中插入图像。我的代码看起来像这样:
$('body').on('click', '.image', function() {
$('.user-photo').children('img').attr('src', $(this).attr('src'));
});
但它不起作用
答案 0 :(得分:2)
演示:http://jsfiddle.net/WnC9B/8/
$('body').on('click', '.image', function(e) {
$('.user-photo').children('img').attr('src', $(e.target).attr('src'));
});
答案 1 :(得分:0)
我认为你以错误的方式使用this
(这是指本例中的body,你应该使用e.target
来引用被点击的元素)
$('body').on('click', '.image', function(e) {
$('.user-photo > img').attr('src', $(e.target).attr('src'));
});
答案 2 :(得分:0)
您可以使用jquery的.tmpl()。在您的情况下,它将用于在div中附加html内容。
$.tmpl("<div class="user-photo"> <img src='' /> </div>")..appendTo("#targetdiv");
另一种方式是:
$('#div').html('<div class="user-photo"> <img src='' /> </div>')