javascript - 通过 JavaScript 选择页面中的所有 gif

标签 javascript

我需要创建一个包含所有 <img> 的列表我页面中的元素是 gif(而不是 jpeg、png 等)。现在我是这样做的:

var imgs = Array.prototype.slice.call( document.getElementsByTagName('img') );
imgs = imgs.filter(function(img){ return img.src.endsWith(".gif") })

是否有使用纯 JavaScript 的更短的替代方案?

最佳答案

您可以使用 querySelectorAll()attribute value ends with selector

var allGifs = document.querySelectorAll('img[src$=".gif"]');

querySelectorAll 返回一个集合,所以如果你想要一个数组,你仍然需要 Array.prototype.slice 技巧或 Array.from(ES2015,但可调整)等。(此外,它返回的集合不像 getElementsByTagName 返回的集合那样“实时”。)


相同的选择器可以与 jQuery 一起使用。添加以供 jQuery 人员引用

$('img[src$=".gif"]')

关于javascript - 通过 JavaScript 选择页面中的所有 gif,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35363016/

相关文章:

javascript - 两个 setTimeout 函数不能单独工作

JavaScript img.onerror 更改源 - 竞争条件

javascript - 在 Tumblr 主题上使用 jQuery 删除特定的 HTML?

javascript - 使用 Baobab 影响多个组件的状态

javascript - 用javascript重复html元素

javascript - 在可使用 Angular 编辑的div内容中查找字符中的插入符号位置

Javascript string.length 和 string.lastIndexOf 差异值

javascript - 有没有办法使用javascript和 Node 模块(oracledb)将csv导入到oracle数据库?

javascript - 如何删除现有的文件拖放区?

javascript - electron-builder 是否会使用它不需要的依赖项