我甚至不确定这是否可行,但让我们一起去吧。
我为每张图片动态生成了这个HTML:
<a href="image.jpg" class="thickbox">
<img src="thumb.jpg" title="This is the title" alt="" />
</a>
不知怎的,我需要从thumb.jpg中获取title属性并将其复制到周围的锚点,这会产生这样的结果:
<a href="image.jpg" class="thickbox" title="This is the title" alt="">
<img src="thumb.jpg" title="This is the title" alt="" />
</a>
如果可以通过jQuery实现这一点,我会很高兴。
提前致谢。
答案 0 :(得分:4)
$('a.thickbox img').each(function(key,$elem){
$(this).parent().attr('title',$(this).attr('title'));
});
如果您有多个图像,则使用每个循环。否则使用函数中的行并将$(this)
替换为$('a.thickbox img')
。
答案 1 :(得分:3)
您可以将函数传递给attr()(或prop()),并写下如下内容:
$("a.thickbox").attr("title", function() {
return $(this).find("img").attr("title");
});
(我在上面的代码中使用attr()
来强调我们正在创建HTML属性的事实。prop()
,它会创建或更新DOM属性,会产生相同的结果。)
答案 2 :(得分:0)
使用.each()
循环缩略图,对于父<a>
的用户,将父标题设置为img的标题。
$("img[src='thumb.jpg']").each( function() {
$(this).parent('a.thickbox').attr('title', this.title);
});