首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >src和data-src属性之间有什么区别?

src和data-src属性之间有什么区别?
EN

Stack Overflow用户
提问于 2013-03-10 15:42:35
回答 5查看 155.9K关注 0票数 110

使用img标记的data-srcsrc属性有什么区别和后果(包括好的和坏的)?我可以同时使用这两种方法来达到相同的效果吗?如果是这样的话,应该在什么时候使用它们?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-03-10 16:25:23

属性srcdata-src没有任何共同之处,除了它们都是HTML5 CR允许的,并且都包含字母src。其他一切都是不同的。

src属性是在HTML specs中定义的,它具有功能含义。

data-src属性只是无限的data-*属性集合中的一个,这些属性没有定义的含义,但可以用来在元素中包含不可见的数据,以便在脚本(或样式)中使用。

票数 188
EN

Stack Overflow用户

发布于 2013-03-10 15:56:03

如果希望图像加载并显示特定的图像,则使用.src加载该图像的URL。

如果您想要一段可以包含URL的元数据(在任何标记上),那么使用data-src或您想要选择的任何data-xxx

关于data-xxxx属性的MDN文档:https://developer.mozilla.org/en-US/docs/DOM/element.dataset

图像标签上的src示例,其中图像为您加载并显示它:

代码语言:javascript
复制
<img id="myImage" src="http://mydomain.com/foo.jpg">

<script>
    var imageUrl = document.getElementById("myImage").src;
</script>

非图像标记上的' data -src‘示例,其中图像尚未加载-它只是div标记上的一段元数据:

代码语言:javascript
复制
<div id="myDiv" data-src="http://mydomain.com/foo.jpg">

<script>
    // in all browsers
    var imageUrl = document.getElementById("myDiv").getAttribute("data-src");

    // or in modern browsers
    var imageUrl = document.getElementById("myDiv").dataset.src;
</script>

用作存储备用图像的data-src的位置的图像标记上的URL示例:

代码语言:javascript
复制
<img id="myImage" src="http://mydomain.com/foo.jpg" data-src="http://mydomain.com/foo.jpg">

<script>
    var item = document.getElementById("myImage");
    // switch the image to the URL specified in data-src
    item.src = item.dataset.src;
</script>
票数 27
EN

Stack Overflow用户

发布于 2013-03-10 15:46:15

第一个属性无效- src是必需属性。比方说,JavaScript可以利用data-src作为属性,但它没有表示意义。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15320052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档