我正在尝试隐藏页面上可见的按钮,同时显示另一个自动隐藏的按钮(两者都在页面上,我不是添加新的,只是更改可见性)。
这就是现在的样子:
<div class="myAwesomeButtons">
<button id="first_button" class="blue_button inset_button" style="">First</button>
<button id="second_button" class="green_button inset_button" style="display: none;">Second</button>
<button id="third_button" class="other_button">Third</button>
</div>
我正在尝试删除第一个按钮,并删除第二个按钮上的style
属性。如何在Chrome扩展程序中使用JavaScript实现此目的?
我已经按顺序安装了manifest.json文件,但我不知道如何处理其余文件。
这是我尝试过的,但我不确定我做错了什么:
function fixButtons() {
document.getElementsByClassName("myAwesomeButtons")[0].style.visibility='hidden';
document.getElementsByClassName("myAwesomeButtons")[1].style.visibility='visible';
}
fixButtons();
答案 0 :(得分:0)
function fixButtons() {
var buttonGroup = document.getElementsByClassName("myAwesomeButtons")[0].getElementsByTagName("button");
buttonGroup[0].style.visibility='hidden';
buttonGroup[1].style.visibility='visible';
}
答案 1 :(得分:0)
您正在混淆display
和visibility
属性。
我尽可能避免使用getElementsByClass
,因为它不适用于IE。我知道这是Chrome扩展程序,所以它会起作用。但是,由于每个按钮都有ID,我只使用getElementById
。
尝试
function fixButtons() {
var button1 = document.getElementById("first_button");
button1.style.display= "none";
var button2 = document.getElementById("second_button");
button2.style.display= "inline";
}