javascript - 未捕获的类型错误 : Cannot set property 'backgroundImage' of undefined althout js is called after page loads

标签 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>

最佳答案

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

关于javascript - 未捕获的类型错误 : Cannot set property 'backgroundImage' of undefined althout js is called after page loads,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47191724/

相关文章:

javascript - react : how to force state changes to take place after setState

javascript - 验证复制|克隆的输入字段是否具有相同的信息

javascript - 减去最近的输入以在另一个输入上设置其值

javascript - jquery 上弹出窗口 Bootstrap 的委托(delegate)事件无法正常工作

php - 如何设置 php 电子邮件表单正文的样式?

css - 根据容器的大小限制文本溢出

javascript - 如何在不重新绘制的情况下更新 Highcharts 中的条形图

javascript - 菜单切换时箭头旋转

html - 如何防止网格布局 div 溢出视口(viewport)?

HTML/CSS 显示=表格行对齐