是否可以通过JavaScript函数更改HTML的值?

这是一个例子:

div class="fb-page" data-href="https://www.facebook.com/ConnectCommunications?fref=ts"
  data-width="450" data-hide-cover="false" data-show-facepile="true" data-small-header="false"
  data-show-posts="true"></div


现在,我想通过JavaScript data-show-facepile -event将truefalse更改为onclick

提前致谢!

最佳答案

在浏览器中使用干净的JavaScript:

document.getElementByClassName('fb-page').setAttribute('data-show-facepile', false),有关更多信息,请参见here。给元素一个id,然后使用document.getElementById()可能很聪明。

现在,如果您有按钮<button id="clickme"> Click me! </button>,则可以添加一个处理程序:

document.getElementById('clickme').addEventListener('click', function(){
    document.getElementByClassName('fb-page')[0].setAttribute('data-show-facepile', false)
});


请注意,如果fb-page类中有多个元素,则要更改的元素可能不是返回列表的第一个元素。



使用jQuery:$('.fb-page').attr('data-show-facepile', false)Docs。如果为元素指定ID,请改用$('#id')

因此,如果您有一个按钮:<button id="fb-show-button">Click me! </button>,则添加一个处理程序:

$('#fb-show-button').click(function(){
    $('.fb-page')[0].attr('data-show-facepile', false)
})


上面的注释也会影响此示例。



为什么要提及使用id而不是类?因为当您要处理一个特定元素时,ID将唯一地标识它,因为只有一个元素可以具有特定ID。一个元素可以有多个fb-page类。这就是为什么获取类元素的方法返回数组的原因。

09-25 16:44
查看更多