javascript中报错"typeerror: XXX is null"

今天在写一个javascript demo的时候,为了一个小问题搞了好久,而且代码就是如下:

var start   = document.getElementById(‘start‘);

start.onclick = function(){

...........

};

之后报了这样的错误,typeerror:start is null

哎呀,之后百度一看,原来是因为自己把javascript代码写在head中了,如此粗心.之后想了一下,确实是这样的.在head定义的javascript要用到文档结构,但是那个时候整个文档都没有加载完,而且我也没有将整个代码写在window.onload = function(){}函数中

一般的做法是将javascript代码写在body之后,这样就不会产生这种错误

时间: 2024-07-30 12:14:09

javascript中报错"typeerror: XXX is null"的相关文章

Javascript 中的false,零值,null,undefined和空字符串对象

在Javascript中,我们经常会接触到题目中提到的这5个比较特别的对象--false.0.空字符串.null和undefined.这几个对象很容易用错,因此在使用时必须得小心. 类型检测 我们下来看看他们的类型分别是什么: <script type="text/javascript"> alert(typeof(false) === 'boolean'); alert(typeof(0) === 'number'); alert(typeof("")

Python2.7 在使用BSTestRunner.py时报错TypeError: unicode argument expected, got &#39;str&#39;

python3往这个库中加入了一些新的内容,使得该库在Python2.7中报错. 解决方法是将导入语句 from io import StringIO as StringIO 更换为: from io import BytesIO as StringIO   Python2.7 在使用BSTestRunner.py时报错TypeError: unicode argument expected, got 'str'

tcpSrv在vs2008中报错

报错内容: 1>LINK : warning LNK4076: 无效的增量状态文件“F:\VC_proj\Cproj\Debug\Cproj.ilk”:正在非增量链接1>lase.obj : error LNK2028: 无法解析的标记(0A000013) "extern "C" int __stdcall closesocket(unsigned int)" ([email protected]@[email protected]),该标记在函数 &q

python框架Scrapy报错TypeError: &#39;float&#39; object is not iterable解决

原因是:Twisted版本高了. 解决办法: 只要把Twisted库降级到16.6.0即可: 1 pip3 install Twisted==16.6.0 2 3 注:Twisted16.6.0安装后,会自动卸载高版本的Twisted python框架Scrapy报错TypeError: 'float' object is not iterable解决

MySql中报错:java.sql.SQLException: Incorrect string value: &#39;\xF0\x9F\x90\xBB&#39; for column

问题描述: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x90\xBB' for column 'nickName' at row 1 at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1094) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4226) at com.mysql.jdbc.M

matplotlib.pyplot import报错: ValueError: _getfullpathname: embedded null character in path

Environment: Windows 10, Anaconda 3.6 matplotlib 2.0 import matplotlib.pyplot 报错: ValueError: _getfullpathname: embedded null character in path 原因以及Solution: http://stackoverflow.com/questions/34004063/error-on-import-matplotlib-pyplot-on-anaconda3-f

Swift在for循环中报错&#39;++&#39; is not a binary operator

最近刚开始学swift,遇到了一个非常诡异的问题.是在写for循环的时候出现语法错误.代码如下: for var i = 0; i < 10; i++{ println("hello world") } 按理说这是Swift里最简单的for循环的使用了.但是编译器还是报了两个错: '++ is not a binary operator' Operator is not a known binary operator 虽然苹果在官方文档里面说,建议通过++i这种方式使用自增运算符

Android中报错

java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{*****Activity}: java.lang.ClassNotFoundException: Didn't find class "*****Activity" on path: /data/app/*******.apk..... 最近总是会遇到这样的错误.哦!不,是自从用了Android4.0中的Eclise后,才发现自己经常会面对

ASP.NET—011:JavaScript报错常见问题

相信大家都写过JavaScript,JS由于语法以及自己需要实现的业务的原因,可能在一个页面上要写长篇大论,或者单独写js文件写了好几百K.JS不可否认给Web编程带了许多的方便.但是如果JS发生了错误那真是让人欲哭无泪.即便是自己写的JS,发生了错误不能执行了都要费很大的劲才能查找出来.如果JS是别人写的你需要维护,报错那真是灾难啊. 就我自己的经验来说,也没什么好办法.只能一行行看代码了.一般来说无非是值为空.对象没有define等等. 1.值为空或者对象为空的 这种的错误,我觉得很常见,因