初学 javascript, window.onlaod 没反应,什么原因那!!!求大神帮分析代码

2015-01-07 21:46:49 +08:00
 laughingla
<!DOCTYPE html>
<html lang="en">
<head>
<meta charsrt="utf-8"/>
<title>laughing2</title>
</head>
<body>
<h1>Snapshot</h1>
<ul>
<li><a href="images/1.jpg" onclick="showPic(this);return false" title="no.1">image1</a>
</li>
<li><a href="images/2.jpg" onclick="countBody(this);return false" title="no.2">image2</a>
</li>
<li><a href="images/3.jpg" onclick="showPic(this);return false" title="no.3">image3</a>
</li>
<img id="placeholder" src="images/4.jpg" alt="no.4"/>
</ul>
<script type="text/javascript" src="scripts/countBody.js"></script>
<script type="text/javascript" src="scripts/showPic.js"></script>

</body>
</html>


countBody.js如下:

function countBodyChildren(){
var body_element = document.getElementByTagName("body")[0];
var count = body_element.childNodes.length;
alert(count);
}
window.onload = countBodyChildren;
3504 次点击
所在节点    程序员
18 条回复
laughingla
2015-01-07 21:57:54 +08:00
唉。看来是等不到答案了……
sneezry
2015-01-07 22:00:53 +08:00
window.onload是所有资源都加载完才触发,有一个没完或者失败都不行
mgnya
2015-01-07 22:01:52 +08:00
var body_element = document.getElementByTagName("body")[0];

var body_element = document.getElementsByTagName("body")[0];

这样?
sneezry
2015-01-07 22:02:28 +08:00
不是onload的问题,而是getElementsByTagName
Twinkle
2015-01-07 22:03:42 +08:00
getElementsByTagName
reeco
2015-01-07 22:05:31 +08:00
getElementsByTagName
刚打完发现楼上已经回答了.....
reeco
2015-01-07 22:06:07 +08:00
另外window.onload 中间是没空格的
loading
2015-01-07 22:06:48 +08:00
把onload调用的函数改成 alert(‘a’)

其他每行都alert,一个b,一个c,你就知道跑到哪里出问题了,这是我刚学js用的方法,那时还没太多调试工具,控制台就听都没听过。

方法很笨,但有效。
进阶是alert变量或type
laughingla
2015-01-07 22:06:59 +08:00
@mgnya
@sneezry
@Twinkle
哈哈,等了好久等不到答案,我自己又检查了一遍,也发现漏了个s。感谢大家。
loading
2015-01-07 22:08:13 +08:00
@mgnya
@sneezry
@reeco
@reeco
别光送鱼哦!
laughingla
2015-01-07 22:10:24 +08:00
@loading 恩,了解。感觉有点像C里面的printf 找不到错的时候确实很有效。
loading
2015-01-07 22:12:42 +08:00
@laughingla chrome的开发者工具,控制台,很方便,可以了解下,你这个错误直接报的。
laughingla
2015-01-07 22:16:41 +08:00
@loading 恩,还有为什么弹窗的结果数字是9,而书上说数字应该很大?
sneezry
2015-01-07 22:20:14 +08:00
@loading 其实感觉有的时候真不知道该帮忙点到哪里,比如lz这个问题,如果让我深入来说,肯定不建议使用window.onload。所以问题还是得自己慢慢领悟,直接完全嚼碎了未必都能消化得了。
loading
2015-01-07 22:22:54 +08:00
@laughingla 你知道函数干了什么吗?你自己数数看
loading
2015-01-07 22:26:57 +08:00
@sneezry 每个人成长的路都不同,能帮就帮。共勉。
Jserqi
2015-01-07 22:50:35 +08:00
window.onlaod -> window.onload
fengliu222
2015-01-08 11:20:37 +08:00
getElement[s]ByTagName

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/160126

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX