我正在使用以下代码从列表中的每个图像中获取标题属性:
$("ul#images li img").each(function(index) {
$(this).attr("title");
});
然后如何使用此属性作为每个图像的标题?我是否首先需要以某种方式将其转换为字符串,然后将其附加到列表项?
谢谢
我正在使用以下代码从列表中的每个图像中获取标题属性:
$("ul#images li img").each(function(index) {
$(this).attr("title");
});
然后如何使用此属性作为每个图像的标题?我是否首先需要以某种方式将其转换为字符串,然后将其附加到列表项?
谢谢
你需要一些 CSS 和修改你的 javascript。但基本上你抓住 attr 值并将其附加到你喜欢的地方。
使用您的示例:
http://jsbin.com/irabiv/1/edit
$("ul#images li img").each(function(index) {
$(this).parent().append('<div class="caption">'+$(this).attr("title")+'</div>');
});
属性总是字符串,title
属性也是字符串,所以你只需要附加它。
$("ul#images li img").each(function() {
$(this).closest('li').append('<br>' + this.title);
});
现在,如果您正在寻找更语义化的 HTML5 解决方案,我建议您使用figure
andfigcaption
元素:
$("ul#images li img").each(function() {
$(this).wrap('<figure/>').after($('<figcaption>', {text: this.title}));
});