繁体   English   中英

在具有相同类的div中显示替代文本(jQuery)

[英]Show Alt text in div with same class (Jquery)

我想展示我的imgs替代文本和我的div是同一个类。 我的操作方式仅显示所有div上的第一张图片,有人可以帮助我吗?

我的代码:

<div id="tela">
    <div class="folha"><img src="img/1.jpg" alt="Rondo Alla turca"></div>
    <div class="folha"><img src="img/2.jpg" alt="Fur Elise"></div>
    <div class="folha"></div>
    <div class="folha"></div>
    <div class="folha"></div>
    <div class="folha"></div>
</div>
<script>
    $(document).ready(function(){
        var alt = $('#tela .folha img').attr('alt');
        var p = $('<p></p>');
        var div = $('.folha');
        $('.folha:has(img)').append(p);
        $('p',this).addClass('title').text(alt);

    });
</script>

您必须使用each()遍历图像。

这是一个片段。

 $('#tela .folha img').each(function() { var alt = $(this).attr('alt'); $(this).parent().append('<p class="title">' + alt + '</p>') }); 
 .folha { margin-bottom : 5px; background-color : red; padding : 5px; } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div id="tela"> <div class="folha"><img src="img/1.jpg" alt="Rondo Alla turca"></div> <div class="folha"><img src="img/2.jpg" alt="Fur Elise"></div> <div class="folha"></div> <div class="folha"></div> <div class="folha"></div> <div class="folha"></div> </div> 

您需要一个循环,例如使用.each()this循环引用要循环的特定元素:

 $(document).ready(function() { $('.folha:has(img)').each(function() { var alt = $(this).find('img').attr('alt'); var p = $('<p></p>').addClass('title').text(alt); $(this).append(p); }) }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div id="tela"> <div class="folha"><img src="img/1.jpg" alt="Rondo Alla turca"></div> <div class="folha"><img src="img/2.jpg" alt="Fur Elise"></div> <div class="folha"></div> <div class="folha"></div> <div class="folha"></div> <div class="folha"></div> </div> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM