将属性添加到对象

时间:2015-07-21 18:30:58

标签: javascript jquery

如何在作为对象提供的某些HTML代码中更改标记的属性?

目前,如果我这样做:

console.log(gallery.currItem);

我明白了:

所以我接着做了:

console.log(gallery.currItem.html);

我在控制台中获取HTML(不是作为对象,我相信它就像texy一样):

<video width="500" height="250" controls><source src="" type=""></video>

但我不确定如何通过添加属性video来修改muted="muted"标记。

我试过了:

console.log($(gallery.currItem.html).find('video'));

但是这又回来了一个物体。 :/

3 个答案:

答案 0 :(得分:1)

我假设您正在使用PhotoSwipe。 gallery.currItem.html不是字符串,而是实际的html元素。 您可以直接编辑它的属性:

gallery.currItem.html.setAttribute("muted", "muted");

要确保它是一个实际元素,如果有问题,请执行以下操作:

if(gallery.currItem.html.tagname) {
    gallery.currItem.html.setAttribute("muted", "muted");
} else {
    // append it to the dom or wrap it into jquery and then set the attributes
    gallery.currItem.html = $(gallery.currItem.html).attr("muted", "muted")[0];
}

答案 1 :(得分:0)

试试这个。

 $(gallery.currItem.html).attr("muted", "muted");

答案 2 :(得分:0)

答案:

$(gallery.currItem.container.lastChild).attr('muted', 'muted');