如何使用jQuery检查alt属性

时间:2015-09-16 22:26:42

标签: jquery html

<img src="_images/hockey.png" />    
<img src="_images/himalaya.png" alt="Himalaya Picture"/>

我在html文件中有上面的两张图片,我想检查它是否有alt属性。

这是我学习JQUERY的第一天,所以非常感谢任何帮助。

谢谢。

4 个答案:

答案 0 :(得分:1)

这一切都取决于你在哪里以及你想做什么。以下是一些指示:

  • $('img[alt]')是如何在jQuery中选择具有alt属性的所有图像。只选择了您感兴趣的那些元素,您可以调用任何一种实现目标的jQuery方法。例如,为这些图像添加一个类$('img[alt]').addClass('myclass')
  • $('img')是您选择所有图片的方式。您可以在此处调用.each()之类的方法,使用this关键字迭代每个图像,然后您可以检查每个图像上的alt属性/属性,如果找到则执行某些操作。示例:

-

$('img').each(function() {
    if( this.alt ) {
        //do something
    }
});

$('img[alt]').addClass('myclass');
$('img').each(function() {
    console.log( this.alt ? 'HAS ALT' : 'DOES NOT HAVE ALT' );
});
.myclass {
    border: 1px solid blue;
    padding: 10px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<img src="_images/hockey.png" />    
<img src="_images/himalaya.png" alt="Himalaya Picture"/>

这对您来说非常好读:https://stackoverflow.com/tags/jquery/info

答案 1 :(得分:0)

您可以选择所有img元素并按&#34; alt&#34;过滤属性。

$("img[alt]").each(function(){
   console.log($(this));
});

答案 2 :(得分:0)

小提琴:http://jsfiddle.net/0qypgs1r/1/

     <img src="_images/hockey.png" />    
        <img src="_images/himalaya.png" alt="Himalaya Picture"/>

  <script> 
        $("img").each(function()
    {
        if($(this).prop("alt"))
            alert($(this).prop("alt"));
    });
</script>

答案 3 :(得分:0)

您可以遍历所有图像并检查alt属性,如此

$('img').each(function(i) {
    if ($(this).prop('alt')) {
        console.log($(this).prop('alt') + ' on element ' + i);
    } else {
        //code for when it has no alt
    }
});

在这里,可以使用函数中作为变量给出的i来从$('img').toArray()中选择img。因为它是页面上图像的位置(从0开始)。

小提琴:https://jsfiddle.net/kezgsgby/