更改样式的Onload功能不起作用

时间:2017-06-14 11:46:12

标签: javascript function styles onload getelementbyid

好吧,我希望当body完全加载后再调用一个函数来显示隐藏图像。我尝试了很多东西并搜索了很多东西,但任何工作都有效。我认为它非常简单易行,但我不知道为什么不起作用......我希望任何人都能帮助我。

<body onload="start()">
<div id="bg" style="display:none"></div>
</body>

function start() {
document.getElementById("bg").style.display = 'block';
}

Here Jsfiddle link

3 个答案:

答案 0 :(得分:0)

只需删除onload =&#34; start()&#34;从你的身体和替换你的功能开始为

<script>
    window.onload=function() {
        document.getElementById("bg").style.display = 'block';
    };
</script>

如果你想使用jquery,那么

<script>
    $(document).ready(function (){
        $("#bg").css("display", "block");
    });
</script>

答案 1 :(得分:0)

那是因为您需要在body标记内运行Javascript。实际上最后。 相反,start函数将是未定义的,没有任何反应:

<body onload="start()">
    <div id="bg" style="display:none"></div>
    <script>
        function start() {
            document.getElementById("bg").style.display = 'block';
        }
    </script>
</body>

答案 2 :(得分:0)

你必须选择:

1-在开始之前添加脚本

<script type="text/javascript">
    $(document).ready(function () {
        //Add your code here to run after fully page load
        document.getElementById("bg").style.display = 'block';
    });
</script>

2-或在<body>结尾处添加您的脚本,然后结束</body>代码:

<script type="text/javascript">
     //Add your code here to run after fully page load
     document.getElementById("bg").style.display = 'block';
</script>