jQuery:将 img alt 标签更改为列表值

jQuery: change img alt tags to list value

本文关键字:列表 标签 img alt jQuery      更新时间:2023-09-26

>我创建了一个列表,其中每个列表项都包含一个图像和一个标题。我现在希望图像 alt 和标题标签与列表项中的标题相同,但我无法让它正常工作。目前,我将所有标题都放入所有 img 标签中(这是我的 js 所期望的),但我无法弄清楚如何让第一个$('ul li img')只拿起第一个$('ul li').text(),第二个拿起第二个$('ul li').text(),等等。

该 HTML:

<ul>
<li><img src="path.jpg" /><p>Title 1</p></li>
<li><img src="path.jpg" /><p>Title 2</p></li>
</ul>

JS:

$(document).ready(function() {
$('ul li img').each(function() {
    var valueTitle = $('ul li').text();
    $(this).attr({
        alt: valueTitle,
        title: valueTitle
    });
});
}); 

<p>元素跟在每一个<img>后面,所以:

$("ul li img").each(function() {
    var $this = $(this),
        valueTitle = $this.next("p").text();
    $this.attr({
        alt: valueTitle,
        title: valueTitle
    });
});

演示:http://jsfiddle.net/cquJX/