jQuery 将 p 内容放入属性中

发布于 2024-12-08 08:29:34 字数 408 浏览 0 评论 0原文

这是我第一次来这里...

我有以下情况:

<div class="album-wrap">
    <img src="picture.jpg" alt="Mickey">
    <p class="caption">little mouse</p>
</div>

<div class="album-wrap">
    <img src="picture2.jpg" alt="Donald">
    <p class="caption">little duck</p>
</div>

问题是:如何将类标题的内容放入 alt 属性中? 或者也许创建另一个属性并放置标题类的内容。 谢谢。

this is my first time here...

I have the following scenario:

<div class="album-wrap">
    <img src="picture.jpg" alt="Mickey">
    <p class="caption">little mouse</p>
</div>

<div class="album-wrap">
    <img src="picture2.jpg" alt="Donald">
    <p class="caption">little duck</p>
</div>

Question is: how could I place the contents of class caption into alt attributes?
Or maybe create another attribute and place the contents of caption class.
Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

暮倦 2024-12-15 08:29:34

循环遍历每个容器,并使用 .text() 获取 p 元素的内容。然后,使用 .attr() 将此值分配给 alt 属性。

$(".album-wrap").each(function(){
    var caption = $("p.caption", this).text();
    $("img", this).attr("alt", caption);
})

Loop through each container, and get the contents of the p element using .text(). Then, assign this value to the alt attribute using .attr().

$(".album-wrap").each(function(){
    var caption = $("p.caption", this).text();
    $("img", this).attr("alt", caption);
})
终难遇 2024-12-15 08:29:34

将替代内容替换为标题文本。

$('.caption').each( function() {
    var $this = $(this),
        $img = $(this).prev('img');
    $img.attr('alt', $this.text() );
});

将标题文本附加到替代内容中。

$('.caption').each( function() {
    var $this = $(this),
        $img = $(this).prev('img'),
        alt = $img.attr('alt');
    $img.attr('alt', alt + ': ' + $this.text() );
});

Replace the alt contents with the text of the caption.

$('.caption').each( function() {
    var $this = $(this),
        $img = $(this).prev('img');
    $img.attr('alt', $this.text() );
});

Append the text of the caption to the alt contents.

$('.caption').each( function() {
    var $this = $(this),
        $img = $(this).prev('img'),
        alt = $img.attr('alt');
    $img.attr('alt', alt + ': ' + $this.text() );
});
难如初 2024-12-15 08:29:34

我将循环遍历 img 元素,并将 alt 属性设置为其各自同级 p.caption 元素的内部文本。

$('.album-wrap img').each(function() {
    var $img = $(this);
    $img.attr('alt', $img.siblings('.caption').text());
});

I would loop through the img elements and set the alt attributes to the inner text of their respective, sibling p.caption elements.

$('.album-wrap img').each(function() {
    var $img = $(this);
    $img.attr('alt', $img.siblings('.caption').text());
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文