4

我只想使用 javascript 将 'autobuffer' 属性添加到我的视频标签中。

基本上:

var video = document.createElement('video');
video.addAttribute('autoBuffer');

我将拥有:

<video autoBuffer></video>

我试过了:

video.setAttribute('autoBuffer'); => <video autoBuffer="undefined"></video>

哪个是错的...

4

2 回答 2

5

第二个参数setAttribute必须始终是一个字符串——当前undefined你隐式传递的参数被转换为一个。利用

video.setAttribute('autoBuffer', '');
于 2013-07-03T13:52:38.127 回答
0

我做的最快的方法:

Element.prototype.addAttribute = function(strAttribute = "") { if (!this.attributes[strAttribute]) { this.toggleAttribute(strAttribute); } }

只有在它不存在时才会添加它。最初我将其命名为“touchAttribute”,但我为您的情况重命名了它。

如果您完全确定元素中不存在该属性,则可以使用video.toggleAttribute("autoBuffer");

于 2021-06-15T22:57:54.303 回答