未捕获的TypeError:无法设置属性' backgroundImage'在页面加载后调用未定义的althout js

时间:2017-11-08 23:53:51

标签: javascript html css onload

我认为在$(document).ready(function(){})之前使用</body>页面会加载但是当我尝试通过javascript设置背景图片时,我得到:

Uncaught TypeError: Cannot set property 'backgroundImage' of undefined.

代码是:

<body>
<div class="bottom_header"></div>
<script>
  $(document).ready(function(){
  doSlideshow();

  function doSlideshow()
  {
     var x = document.getElementsByClassName("bottom_header");
     x.style.backgroundImage = "url('s1.jpg')";
  }
})
</script>
</body>

我也尝试过以下操作但结果相同typeError。我无法理解我做错了什么。

<body>
<div class="bottom_header"></div>
<script>
window.onload = function() {
    alert("it's in");
    var x = document.getElementsByClassName("bottom_header");
    x.style.backgroundImage = "url('s1.jpg')";
}
</script>
</body>

1 个答案:

答案 0 :(得分:2)

document.getElementsByClassName会返回一个或多个元素,因此您需要获取第一个这样的元素(或迭代它们)。