Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 装载儿童_Javascript_Onload_Appendchild - Fatal编程技术网

Javascript 装载儿童

Javascript 装载儿童,javascript,onload,appendchild,Javascript,Onload,Appendchild,所以问题是,为什么不在加载时附加div?这件事让我抓狂。没有错误。。。只是没有加载 <head> <script type="text/javascript"> function load() { var divTag0 = document.createElement("div"); divTag0.className = "newsBlock"; divTag0.inner

所以问题是,为什么不在加载时附加div?这件事让我抓狂。没有错误。。。只是没有加载

<head>
    <script type="text/javascript">
        function load() {
            var divTag0 = document.createElement("div");
            divTag0.className = "newsBlock";
            divTag0.innerHTML = " Try this..";
            document.getElementById("newsLeft").appendChild(divTag0);

            var divTag1 = document.createElement("div");
            divTag1.className = "newsBlock";
            divTag1.innerHTML = " Blah..";
            document.getElementById("newsRight").appendChild(divTag1);

            var divTag2 = document.createElement("div");
            divTag2.className = "newsBlock";
            divTag2.innerHTML = " And this ..";
            document.getElementById("newsLeft").appendChild(divTag2);    
        }
    </script> 
</head>
<body>
    <p> Something filler </p>
    <div id="newsLeft">  
    </div>
    <div id="newsRight">     
    </div>
    <script type="text/javascript">
        window.onload="load()";
    </script>
</body>

函数加载(){
var divTag0=document.createElement(“div”);
divTag0.className=“新闻块”;
divTag0.innerHTML=“试试这个..”;
document.getElementById(“newsleet”).appendChild(divTag0);
var divTag1=document.createElement(“div”);
divTag1.className=“新闻块”;
divTag1.innerHTML=“Blah..”;
document.getElementById(“newRight”).appendChild(divTag1);
var divTag2=document.createElement(“div”);
divTag2.className=“新闻块”;
divTag2.innerHTML=“和此..”;
document.getElementById(“newsleet”).appendChild(divTag2);
}
填充物

window.onload=“load()”;
您应该向

以便:
document.getElementById(newsleet).appendChild(divTag0)

应该是:
document.getElementById(“newsleet”).appendChild(divTag0)

但主要问题是:
window.onload=“load()”

应该是:
window.onload=load


感谢jvillars的帮助,这让我注意到了这一点。

如果azhrei的答案不起作用,我唯一能想到的就是在加载onload之后调用onload可能不会触发,您可以通过简单地调用load()从您的示例中改变这一点

我测试过了

希望这有帮助

编辑:

我相信azhrei有权这么做,这并不是说onload没有触发,而是你的onload调用有语法问题

但是,通过删除第二个JS调用,这段代码在更好的风格(更可读/更容易理解)方面也可以得到改进

在标题中,如果您写入:

window.onload = function() { 
    //everything inside your load() function goes here
} 

它同样有效。它还去除了很多刚刚出现的绒毛。我希望这会有帮助。

是的,之前尝试过,但没有成功。所以即使有引号,它也不起作用。太好了。我不知道只是打电话给基金会。这帮我找到了另一个bug。。。所以,您不需要显式地重新加载。。。只需将window.onload函数设置为函数,而不是字符串。:-)我用这个更新了我的答案。我刚刚做了一个编辑,我认为它符合azhrei所说的,并且提供了比我昨天的解决方案更好的整体风格。我希望这更有帮助。