无法读取HTML和JavaScript中的null属性[重复]。

问题描述 投票:0回答:1

我是JS新手。我想做一个按钮,可以改变HTML页面的BG颜色。

<!DOCTYPE html>
<html lang="en">
<head>
    <script src="js/index.js"></script>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <button class="btn btn-outline-secondary">Click Me!</button>
</body>
</html>

这是HTML代码: 这里是JS。

const button = document.querySelector('button');
const body = document.querySelector('body');
const colors = ['red', 'green', 'blue', 'yellow', 'pink', 'purple'];

body.style.backgroundColor = 'violet';
button.addEventListener('click', changeBackground);

function changeBackground(){
const colorIndex= parseInt(Math.random()*colors.length);
body.style.backgroundColor = colors[colorIndex];
}

这段代码不能用,而且在控制台上不断出错。

index.js:5 未捕获TypeError。无法读取null的'style'属性

javascript html javascript-events
1个回答
0
投票

把你的脚本放在你的正文加载后执行

<!DOCTYPE html>
<html lang="en">
<head>

    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <button class="btn btn-outline-secondary">Click Me!</button>
    <script src="js/index.js"></script>
</body>

</html>
© www.soinside.com 2019 - 2024. All rights reserved.