使用alt文本查找图像标记

MrJ*_*ckV 6 javascript tags attributes image

我想知道是否可以使用Javascript通过其alt文本查找图像标记.例如,我有这个标签:<img src="Myimage.jpg" alt="Myimage">有没有办法通过查找"Myimage"alt属性来获取标签?

Tim*_*own 12

毫无疑问,很快就会发布一个jQuery解决方案.要做到这一点,以下将工作:

function getImagesByAlt(alt) {
    var allImages = document.getElementsByTagName("img");
    var images = [];
    for (var i = 0, len = allImages.length; i < len; ++i) {
        if (allImages[i].alt == alt) {
            images.push(allImages[i]);
        }
    }
    return images;
}

var myImage = getImagesByAlt("Myimage")[0];
Run Code Online (Sandbox Code Playgroud)


Dan*_*elC 8

你可以用JQuery做到这一点.以下JQuery代码将返回任何图像,其alt标记设置为"Myimage":

$('img[alt="Myimage"]').
Run Code Online (Sandbox Code Playgroud)

但是,使用图像标记的id属性会更容易,性能更高.


Ste*_*ner 6

var imgElement = document.querySelector(img[alt="MyImage"])
Run Code Online (Sandbox Code Playgroud)

  • 正确答案是 `var imgElement = document.querySelector('img[alt="MyImage"]')`。querySelector 内的文本需要用引号引起来。如果不是,控制台会显示“Uncaught ReferenceError:img 未定义” (2认同)