【问题标题】:jQuery: change img alt tags to list valuejQuery:将 img alt 标签更改为列表值
【发布时间】:2013-01-30 12:36:01
【问题描述】:

我创建了一个列表,其中每个列表项都包含一个图像和一个标题。我现在希望图像 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
    });
});
}); 

【问题讨论】:

    标签: javascript jquery each


    【解决方案1】:

    &lt;p&gt; 元素跟在每个&lt;img&gt; 之后,所以:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-28
      • 1970-01-01
      • 2014-07-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-14
      • 1970-01-01
      相关资源
      最近更新 更多