0

我不懂 JavaScript,我想为视频标签添加一些属性。是否可以使用可以影响一页上所有视频的 JS 代码?

请看下面的代码,我在网上搜索后尝试了这个,不确定它是否正确!

我感谢您的帮助。

function playVideo() {
    var elementVar = document.getElementsByTagName("video");
    elementVar.setAttribute("autoplay: autoplay" || "loop: loop" || "controls: false") ;
}
4

2 回答 2

1

您绝对可以使用 javascript 将属性添加到视频标签,但您没有使用正确的语法。

setAttribute的正确语法是:

.setAttribute(attrName, attrValue);

请注意,它一次也只能设置一个属性,因此您不能这样做"autoplay: autoplay" || "loop: loop"

这是您可能想要的代码:

function playVideo() {
    var elementVar = document.getElementsByTagName("video");
    elementVar.setAttribute("autoplay", "autoplay");
    elementVar.setAttribute("loop", "loop");
    elementVar.setAttribute("controls", "false");
}
于 2019-12-15T04:20:20.097 回答
0

您绝对可以使用 Javascript 在元素上设置属性。但是,该setAttribute功能需要以不同的方式使用。它需要两个参数:

  • 属性名称
  • 该属性的值

因此,在您的情况下,这将是设置autoplay属性的正确方法:

elementVar.setAttribute("autoplay","autoplay")

另外,我不确定or运算符 ( ||) 应该在字符串之间做什么。但看起来您想要设置所有这些属性。这需要通过 3 个调用来完成,如下所示:

elementVar.setAttribute("autoplay","autoplay")
elementVar.setAttribute("loop","loop")
elementVar.setAttribute("controls","false")
于 2019-12-15T04:21:37.753 回答