0

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

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

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

4

2 回答 2

2

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

来自 w3schools

您应该在属性存在时使用它。

setAttribute 的性能更差

我测试了 100 个图像元素。

  • 运行一个更改 src 的函数需要 2 毫秒。
  • 使用 setAttribute 花了 4 毫秒。
于 2013-10-19T08:01:54.007 回答
1

仅当属性已经可用时,才能使用第二种方法,因为第一种方法将创建它并分配值以防万一它不可用。

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

于 2013-10-19T07:43:51.233 回答