我试图改变程序中侧边栏的颜色。我试图用JavaScript做这件事,请不要使用JQuery。
这是我的侧边栏的html:
<div class = "sidebar">
<div class = "receipt">
<table id = "sideTable">
<tr class = "sideTR">
<th id = "sideTH" class = "h22">RECEIPT</th>
</tr>
<tr class = "sideTR">
<td class = "sideTD">
<div class = "submit">
<input type = "button" onclick = "changeColour()" value = "Change Colour">
</div>
</td>
</tr>
</table>
</div>
</div>
我程序中的其他所有内容都运行良好但是当我输入颜色更改功能时,我的所有功能都不再有效。我觉得答案会很明显,但我还在学习。任何帮助将不胜感激!
答案 0 :(得分:1)
这一行:
var sideReceipt = document.getElementById("receipt");
...正在寻找一个不存在id的元素。您的元素的类为"receipt"
。
然后是以下一行:
sideReceipt.style.borderColor = "#ee4c11";
...会给出错误TypeError: Cannot read property 'style' of null
。
The fix是将该div更改为id="receipt"
。
(我无法解释为什么在添加该功能后 none 你的功能的工作原理,因为它实际上并不包含任何语法错误,所以它&#39 ; ll仅在您实际单击调用它的按钮时发出错误。)
答案 1 :(得分:0)
请在主div中添加ID,如下所示
<div class = "sidebar"> to <div class="sidebar" id="sidebar">
答案 2 :(得分:0)
你有一个div与class =“receipt”并通过getElementById获取JavaScript 并且它寻找Id不是为了上课。请将类更改为id,它将正常工作。