Part1:

当js文件放在head里面时,如果绑定了onclick事件,就会出现这样的错误,

是因为W3School的写法是浏览器先加载完按钮节点才执行的js,所以当浏览器自顶向下解析时,找不到onclick绑定的按钮节点,于是报错。

【1】因此,需要把js文件放在底部加载,就会避免该问题。

【2】在js代码外包一个window.onload = function(){} 即可解决问题

 代码如下:[注]:这里的代码只作为演示代码

 <script>
window.onload = function(){
var mainSlider = document.getElementsByClassName("mian-slider")[0];
var aaa = mainSlider.children[0];
var ul = mainSlider.children[1];
var arrow = mainSlider.lastChild || mainSlider.lastElementChild;
var imgWidth = mainSlider.offsetWidth; }
</script>
<div class="main-slider">
<a id="aaa">
<img src="data:images/slide.jpg" alt="">
<img src="data:images/slide1.jpg" alt="">
<img src="data:images/slide2.jpg" alt="">
<img src="data:images/slide3.jpg" alt="">
<img src="data:images/slide4.jpg" alt="">
<img src="data:images/slide5.jpg" alt="">
</a>
<ul>
<li></li>
</ul>
<div class="arrow">
<a class="arrow-l" href="javascript:void(0)"><</a>
<a class="arrow-r" href="javascript:;">></a>
</div>
</div>

Part2:

那么问题来了window.onload = function(){}又是什么呢?

window.onload 的意思就是页面全部加载完成之后做一些事情,甚至包括图片。

Part3:

那么如果这个问题该怎么解决呢?

 window.onload=function(){
var o=document.getElementById('infozone');
window.setInterval(function(){scrollup(o,20,0);},3000);
} window.onload = function(){
var $ = function($){
return document.getElementById($);
}; window.onload = function(){
var $1 = function($1){
return document.getElementById($1);
};

[问题]:页面只执行一个事件,另外两个不执行.

我们应该怎么改写能让这三个onload()都能加载到页面中?

[解决]:

 window.onload=function(){
var o=document.getElementById('infozone');
window.setInterval(function(){scrollup(o,20,0);},3000); var $ = function($){
return document.getElementById($);
}
var $1 = function($1){
return document.getElementById($1);
}
}

浏览器出现Cannot set property 'onclick' of null的问题的更多相关文章

  1. Cannot set property 'onclick' of null的问题

    转载自: https://my.oschina.net/ximidao/blog/351017 摘要: 测试点击事件的时候浏览器报错,提示Uncaught TypeError: Cannot set ...

  2. Uncaught TypeError: Cannot set property 'onclick' of null解决办法

    如果把js内容直接放在这个head标签以内,button按钮不能正常点击更换body的背景颜色,报错提示:demo6.html:16 Uncaught TypeError: Cannot set pr ...

  3. Cannot set property 'onclick' of null报错

    经常几个页面使用公共js文件, 原来遇到也没留意, 原来是本页面执行的时候, 其他页面也在执行并赋予id于onclick. 因为页面是正常情况下是不存在null和undefined if(null){ ...

  4. 报错之-Cannot set property 'onclick' of null

    当js文件放在head里面时,如果绑定了onclick或者onmouseover事件,就会出现如下图类似的错误,是因为浏览器的加载你写的html文档的顺序是从上往下,加载完按钮节点才执行的js,所以当 ...

  5. 【jQuery学习】用JavaScript写一个输出多选框的个数报错:Cannot set property 'onclick' of null"

    说明:代码段来源于:<锋利的jQuery> 根据代码段我补充的代码如下: <!DOCTYPE html> <html> <head> <meta ...

  6. Uncaught TypeError: Cannot set property onclick' of null

    如果出现以上问题,只需要把<script src="xxx.js"></script> 移动到最后,</body>的前面;

  7. 百度ueditor 实例化 Cannot set property 'innerHTML' of null 完美解决方案

    此时此刻,我正在用博客园推荐的TinyMCE编辑器写这个博客,突然想起最近在项目中使用百度ueditor编辑器中的一些经历.所以记录在此,与大家分享. 不得不说,百度ueditor是一款很好的在线编辑 ...

  8. Extjs4---Cannot read property 'addCls' of null - heirenheiren的专栏 - 博客频道 - CSDN.NET

    body { font-family: 微软雅黑,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-serif,宋体, PMingLi ...

  9. 错误:Cannot set property 'innerHTML' of null

    360浏览器代码编辑器里提示错误:Cannot set property 'innerHTML' of null 原因是代码执行时要调用的内容不存在

随机推荐

  1. xml读取一行数据

    #include<map>#include<iostream>#include<fstream>#include<string>using namesp ...

  2. SpringMVC , Spring , MyBatis 文件上传

    学习一下文件上传下载,为图片上传做准备,感觉有一个世纪没玩过上传下载了,边敲代码边记录,请各路大神指教: 参考:http://blog.csdn.net/wjycgl/article/details/ ...

  3. 对象作为 handleEvent

    elem.addEventListener("click", obj, false);    //用对象作为处理函数   var obj = {     handleEvent: ...

  4. openstack学习心得:glance 架构、概念、后端存储配置方式

    glance 架构 glance 服务概述 Image 服务 使得用户可以发现.注册.检索虚拟机镜像.它对外提供REST API使得你能够查询虚拟机镜像元数据和检索一个真实的镜像.你可以通过镜像服务将 ...

  5. Maven元素解析——pom.xml

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6628201.html  一个pom.xml中包含了许多标签,各个标签是对项目生命周期.依赖管理的配置.常用的主 ...

  6. 《天书夜读:从汇编语言到windows内核编程》六 驱动、设备、与请求

    1)跳入到基础篇的内核编程第7章,驱动入口函数DriverEnter的返回值决定驱动程序是否加载成功,当打算反汇编阅读驱动内核程序时,可寻找该位置. 2)DRIVER_OBJECT下的派遣函数(分发函 ...

  7. [转载] 详述三种现代JVM语言--Groovy,Scala和Clojure

    转载自http://www.tuicool.com/articles/jYzuAv和http://www.importnew.com/1537.html 在我与Martin Fowler曾经合作呈现的 ...

  8. python调用c代码2

    1.生成动态链接库 [root@typhoeus79 c]# more head.c #include <stdio.h> #include <stdlib.h> typede ...

  9. python logging模块+ 个人总结

    原文地址:http://www.cnblogs.com/sislcb/archive/2008/11/25/1340627.html 从Python2.3版本中开始引入的logging模块为应用提供了 ...

  10. 深度学习的异构加速技术(一):AI 需要一个多大的“心脏”?

    欢迎大家前往腾讯云社区,获取更多腾讯海量技术实践干货哦~ 作者:kevinxiaoyu,高级研究员,隶属腾讯TEG-架构平台部,主要研究方向为深度学习异构计算与硬件加速.FPGA云.高速视觉感知等方向 ...