首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS如何获取所有img src标签

在JavaScript中,获取页面上所有<img>标签的src属性可以通过多种方式实现。以下是几种常见的方法:

方法一:使用 document.querySelectorAll

document.querySelectorAll 方法可以选择页面上匹配指定CSS选择器的所有元素。对于获取所有<img>标签的src属性,可以使用以下代码:

代码语言:txt
复制
// 获取所有 <img> 标签
const images = document.querySelectorAll('img');

// 遍历所有 <img> 标签并获取它们的 src 属性
const srcList = [];
images.forEach(img => {
    srcList.push(img.src);
});

console.log(srcList);

方法二:使用 document.getElementsByTagName

document.getElementsByTagName 方法返回一个包含所有指定标签名的元素的NodeList。可以通过遍历这个NodeList来获取每个<img>标签的src属性:

代码语言:txt
复制
// 获取所有 <img> 标签
const images = document.getElementsByTagName('img');

// 遍历所有 <img> 标签并获取它们的 src 属性
const srcList = [];
for (let i = 0; i < images.length; i++) {
    srcList.push(images[i].src);
}

console.log(srcList);

方法三:使用 Array.frommap

如果你更喜欢使用数组方法,可以将NodeList转换为数组,然后使用map方法来提取src属性:

代码语言:txt
复制
// 获取所有 <img> 标签并转换为数组
const imagesArray = Array.from(document.getElementsByTagName('img'));

// 使用 map 方法获取所有 src 属性
const srcList = imagesArray.map(img => img.src);

console.log(srcList);

应用场景

这些方法适用于需要在客户端动态获取页面上所有图片资源的场景,例如:

  • 图片懒加载:在页面滚动到图片位置时才加载图片。
  • 图片预加载:在页面加载完成前预先加载所有图片以提高用户体验。
  • 图片统计分析:收集页面上的图片信息用于分析或报告。

注意事项

  • 在某些情况下,图片可能还没有完全加载,此时获取到的src可能是空的或者是一个占位符。
  • 如果页面中有动态生成的图片或者通过JavaScript插入的图片,可能需要使用事件监听或其他机制来确保在图片元素存在时执行获取操作。

以上方法均适用于现代浏览器,包括Chrome、Firefox、Safari和Edge等。在使用这些方法时,请确保页面已经完全加载,否则可能会错过一些动态加载的图片元素。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

js和jQuery获取img标签的src属性获取不到的解决方法

很多朋友可能遇到过,用 jQuery 获取 img 标签的 src 属性却获取不到的问题: img id="test" src="1.jpg" alt="test" /> 使用如下的语句都会出错:...alert($('#test')); alert($('#test').src); 使用 $('#test').src 语句不会出错,但获取不到 img 的地址。...alert($('#test'));  //[object Object] alert($('#test').src);  //undefined  最后,使用 $('#test')[0].src 才能够获取到...拓展: JS获取 img 的 src 值: //方法一: var path =  $('#test').attr('src'); //方法二: var path = document.getElementById...("test").src; //方法三: var path = $("#test")[0].src; 声明:本文由w3h5原创,转载请注明出处:《js和jQuery获取img标签的src属性获取不到的解决方法

18.9K60

PHP 正则表达式 获取富文本中的 img标签的src属性

前言 鄙人发现对于微信看看中的文章,一般都会有三张摘要图片; 所以想着可以直接提取富文本中的 img>标签的 src 属性信息; 这样就可以在前台的 文章列表中展示三张图片(建议不要多了),吸引阅读...标签:'/img\b.*?...img> 标签是忽略大小写的,并且 标签结尾 使用 > 或者 /> - 2. src 属性信息一般是以".jpg|.png|.jpeg|.gif"结尾的; 但是也有的不需要扩展没那个结尾(只是个图片链接...注意匹配的结尾形式 ([^\'\"]*) 匹配不上单引号和双引号的字符 整理后的处理源码如下: /** * 对富文本信息中的数据 * 匹配出所有的 img> 标签的 src属性 * @param...参考文章 ------ 如何通过正则表达式获取img标签的src属性 ------ PHP正则表达式,看这一篇就够啦! ②. 推荐学习—— 正则表达式 - 匹配规则

6.8K10
  • img标签的src=会引起的Page_Load多次执行

    " src="" />   改成二个连续的img,即: img alt="test" src="" />   img alt="test" src="" />   运行后,页面仍被执行2次 继续测试...,把img alt="test" src="" /> 改为  img alt="sss" src="" onerror="this.src='http://www.baidu.com/img/baidu_logo.gif...这回干脆把src=""都去掉,即改成img alt="test" />,再次竞猜结果? 居然正常了,即仅执行了一次!...(呵呵,看来多一事不如少一事) 最后再折腾一次,把src故意写成一个错误的地址,比如img alt="test" src="http://abc.asdf.werdafsaf.sadfasdfas.xxx.gif...结论:img标签的src=""时,会引起浏览器再次访问"./"即当前目录,如果该目录下有default.aspx,index.aspx等IIS的默认文档,则默认文档会执行2次

    1.4K100

    jquery 获取所有的标签

    本文将介绍如何使用jQuery获取所有的标签,并展示一个简单的示例代码。使用jQuery获取所有的标签jQuery提供了选择器来筛选和操作DOM元素,通过使用通配符*可以选择所有的标签。...在控制台中会打印出页面上所有标签元素的标签名称。示例代码演示下面是一个简单的示例代码,演示了如何使用jQuery获取所有的标签,并在页面上展示出来:htmlCopy code jQuery - 获取所有标签 src="https://code.jquery.com/jquery...通过这种方法,我们可以使用jQuery方便地获取页面上的所有标签,并进行进一步的处理和操作。 希望这篇技术博客能帮助您理解如何使用jQuery获取所有的标签。感谢阅读!...下面将通过一个示例代码,结合实际应用场景演示如何获取所有的标签,并为其添加点击事件。

    11710

    原生JS | 通过类名获取标签

    原生JS通过类名获取标签 getElementsByClassName()是原生JavaScript提供的方法,但是并不是所有的浏览器都支持,在ie早期版本的浏览器是不允许通过这个方法获取标签的,因此...通过类名获取标签的思路 首先检测浏览器是否支持getElementsByClassName方法; 对于不支持getElementsByClassName方法的浏览器,通过标签名的方式来获取标签,之后,进行标签的筛选...JS功能代码 1....构建函数 使用工厂模式创建函数,用户向“工厂(函数)”中传入类名,使用if语句,判断document是否存在getElementsByClassName方法,如果存在,则直接获取; 如果不存在,则先获取所有标签...功能优化 – 缩小选取范围 在此前的代码当中,存在着一个问题:如果通过通配符获取标签,那么所获取的标签数量过于庞大,需要筛选大量的标签,会耗费比较多的时间,此时可以借助第二个参数进行控制,允许用户传入一个参数

    13.1K60

    如何用 JS 一次获取 HTML 表单的所有字段 ?

    ---- 问:如何用 JS 一次获取 HTML 表单的所有字段 ?...用户单击“提交”按钮后,我们如何从此表单中获取所有数据? 有两种方法:一种是用黑科技,另一种是更清洁,也是最常用的方法。为了演示这种方法,我们先创建form.js,并引入文件中。...从事件 target 获取表单字段 首先,我们在表单上为Submit事件注册一个事件侦听器,以停止默认行为(它们将数据发送到后端)。...总结 要从HTML表单中获取所有字段,可以使用: this.elements或event.target.elements,只有在预先知道所有字段并且它们保持稳定的情况下,才能使用。...使用FormData构建具有所有字段的对象,之后可以转换,更新或将其发送到远程API。* ---- 原文:https://www.valentinog.com/bl...

    5K20

    Go: 如何获取文件所有者

    在 Go 语言的编程实践中,有时我们需要确定一个文件的所有者是谁。这在处理文件权限、系统管理或安全相关的应用程序时尤其重要。本文将详细介绍如何在 Go 语言中获取指定文件的所有者信息。...通过获取这些信息,我们可以了解文件的访问权限,进而进行相应的操作和管理。 Go 语言中的实现 在 Go 语言中,获取文件所有者信息需要结合 os 包和系统调用。...以下是一个基本的实现步骤: 获取文件信息:首先,我们使用 os.Stat 函数获取文件的元数据。 转换为系统特定的结构:接着,我们将通用的文件信息转换为系统特定的结构,以便获取所有者信息。...应用场景 系统管理工具:在开发系统管理相关的工具时,经常需要获取和处理文件所有者信息。 安全检查:在安全相关的应用中,识别文件的所有者可以帮助确定文件的安全状态。...希望这篇文章能帮助读者更好地理解如何在 Go 语言中获取文件所有者信息。欢迎关注我的博客,了解更多关于 Go 语言和软件开发的知识。

    22310

    PHP如何获取本周所有的日期

    这里分享一篇如何使用PHP获取本周的所有日期。图片获取日期第一天和最后一天如果要获取第一天和最后一天,可以使用如下的方法。...可以使用PHP内置函数date()、strtotime()和如下方法来统计本周第一天到本周最后一天的日期:// 获取本周第一天的时间戳$first_day_of_week = strtotime('this...week Monday');// 获取本周最后一天的时间戳$last_day_of_week = strtotime('this week Sunday');// 使用date()函数将时间戳转换为日期格式...本周起始日期: {$start_date}\n";echo "本周结束日期: {$end_date}\n";输出结果类似于:本周起始日期: 2021-12-06本周结束日期: 2021-12-12 本周所有日期可以基于上面提供的算法...12-062021-12-072021-12-082021-12-092021-12-102021-12-112021-12-12其中,86400 表示一天的秒数,即每次循环加上一天的秒数,来遍历本周内所有的日期

    2.6K30

    EMLOG获取某个标签名及下面的所有文章的方法

    获取某个标签名及下面的所有文章的方法,实现效果如下 废话不多说了。,直接上代码,把下面代码直接放入module.php,css就不写了,字搞定吧。代码如下: <?...php //获取TAG的所有内容 function blog_tag_con($tagname){ $tags = explode(",",$tagname);//分割数组 $Tag_Model = new...db = MySql::getInstance();// 链接数据库 foreach($tags as $a):$blogIdStr = $Tag_Model->getTagByName($a);//获取标签所有文章...php //获取TAG的所有内容 function blog_tag_con6($tagname,$listcount){ $tags = explode(",",$tagname);//分割数组 $Tag_Model...db = MySql::getInstance();// 链接数据库 foreach($tags as $a): $blogIdStr = $Tag_Model->getTagByName($a);//获取标签所有文章

    52110

    前端如何获取当前时间_js 获取年份

    前端js获取当前时间的方法: var time = new Date(); time.getYear(); //获取当前年份 time.getFullYear(); //获取完整的年份(4位,1970...time.getMonth(); //获取当前月份(0-11,0代表1月) time.getDate(); //获取当前日(1-31) time.getDay(); //获取当前星期X(0-6,0代表星期天...获取当前分钟数(0-59) time.getSeconds(); //获取当前秒数(0-59) time.getMilliseconds(); //获取当前毫秒数(0-999) time.toLocaleDateString...(); //获取当前日期 var mytime=time.toLocaleTimeString(); //获取当前时间 time.toLocaleString( ); //获取日期与时间 为了让大家有一个更感官的了解...本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    34.1K20
    领券