image.setAttribute 和 image.src 之间的区别

Difference between image.setAttribute and image.src

本文关键字:image 区别 之间 src setAttribute      更新时间:2023-09-26

以下两种方法有什么区别吗

var image = document.createElement("img");
1) image.setAttribute('src','mySrc');
2) image.src = 'mySrc';

对于任何html元素,以上述方式设置某些属性是否有区别?是否有任何浏览器可靠性?

使用 setAttribute(),即使属性不存在,您也可以添加它。但它仅在主要浏览器上受支持。Ie8 及更早版本没有支持此功能。

从 w3schools

如果存在该属性,则应使用它。

setAttribute 的性能更差

我测试了 100 个图像元素。

  • 运行一个更改 src 的函数需要 2 毫秒。
  • 使用 setAttribute 需要 4 毫秒。

当属性已经可用时,才能使用第二种方法,而第一种方法将创建它并在不可用的情况下分配值。

对于 image.src,两者都可以工作,因为默认情况下可以使用"src"属性。