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

使用img标签的data-srcsrc属性有什么区别和后果(好的和坏的)? 我可以使用两者达到相同的结果吗? 如果是的话,什么时候应该使用他们每个人?

srcdata-src属性没有什么共同之处,除了它们都被HTML5 CR所允许,并且它们都包含字母src 。 其他一切都不一样

src属性在HTML规范中定义,并且具有function性意义。

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

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

如果您想要一段包含URL的元数据(在任何标签上),请使用data-src或您要select的任何data-xxx

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

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

 <img id="myImage" src="http://mydomain.com/foo.jpg"> <script> var imageUrl = document.getElementById("myImage").src; </script> 

未加载图像的非图像标签上的“data-src”示例 – 这只是div标签中的一段元数据:

 <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> 

用于存储备用图像的URL的图像标签上的data-src示例:

 <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> 

第一个<img />是无效的 – src是一个必需的属性。 data-src是一个属性,不能被JavaScript所利用,但是没有表示的意义。

data-src属性是HTML5中引入的data- *属性集合的一部分。 data-src允许我们存储对浏览器没有意义的额外数据,但是可以使用Javascript代码或CSS规则。

那么数据的src属性只是用于绑定数据,例如ASP.NET …

W3School的src属性

MSDN datasrc属性