html5学习--js语句在html文档中的位置
2017-02-26 22:16
387 查看
最近用html5做了个计时器的小项目。由于久不用html5,所以对js略生疏,遇到了js语句在html文档中位置差异的问题。
常见做法是把js单独写成一个文件并在head元素中调用。对于小块的js语句,在html文档中的位置就有所考虑。百度了一下,下面这篇文章对js位置做了一个Q&A示范(原文链接见HTML5关于js在body中的位置的问题),整理如下:
示例代码:
该代码的问题在于js语句块在canvas前,当js执行 document.getElementById(“myCanvas”)时,canvas并未生成,因此产生报错。
正确的代码如下:
此时按照文档顺序,先生成canvas再执行js,正常通过。
另一种处理方法是利用windows.onload方法,确保文档生成后在去执行js语句块。代码如下:
另请参阅:
1、【解决方案】如何实现在HTML页面加载完毕后运行某个jshttp://blog.csdn.net/fifteen718/article/details/50963073
2、 页面自动执行(加载)js的几种方法http://blog.csdn.net/zdnlp/article/details/14231067/
3、关于JSP中body标签中onload中函数不执行问题http://www.cnblogs.com/atp-sir/p/5752512.html
常见做法是把js单独写成一个文件并在head元素中调用。对于小块的js语句,在html文档中的位置就有所考虑。百度了一下,下面这篇文章对js位置做了一个Q&A示范(原文链接见HTML5关于js在body中的位置的问题),整理如下:
示例代码:
<!DOCTYPE HTML> <html> <body> <script type="text/javascript" > var canvas = document.getElementById("myCanvas"); var cxt = canvas.getContext("2d"); cxt.moveTo(10,10); cxt.lineTo(150,50); cxt.lineTo(10,50); cxt.stroke(); </script> <canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;"> Your browser does not support the canvas element. </canvas> </body> </html>
该代码的问题在于js语句块在canvas前,当js执行 document.getElementById(“myCanvas”)时,canvas并未生成,因此产生报错。
正确的代码如下:
<!DOCTYPE HTML> <html> <body> <canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;"> Your browser does not support the canvas element. </canvas> <script type="text/javascript" > var canvas = document.getElementById("myCanvas"); var cxt = canvas.getContext("2d"); cxt.moveTo(10,10); cxt.lineTo(150,50); cxt.lineTo(10,50); cxt.stroke(); </script> </body> </html>
此时按照文档顺序,先生成canvas再执行js,正常通过。
另一种处理方法是利用windows.onload方法,确保文档生成后在去执行js语句块。代码如下:
<script type="text/javascript" > window.onload = function(){ var canvas = document.getElementById("myCanvas"); var cxt = canvas.getContext("2d"); cxt.moveTo(10,10); cxt.lineTo(150,50); cxt.lineTo(10,50); cxt.stroke(); } </script>
另请参阅:
1、【解决方案】如何实现在HTML页面加载完毕后运行某个jshttp://blog.csdn.net/fifteen718/article/details/50963073
2、 页面自动执行(加载)js的几种方法http://blog.csdn.net/zdnlp/article/details/14231067/
3、关于JSP中body标签中onload中函数不执行问题http://www.cnblogs.com/atp-sir/p/5752512.html
相关文章推荐
- 轻松学习JavaScript十九:DOM编程之在HTML文档什么位置编写JS代码
- 轻松学习JavaScript十九:DOM编程学习之在HTML文档什么位置编写JS代码
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第19讲_js运行原理_js开发工具介绍_js程序(hello)_js基本语法_学习笔记_源代码图解_PPT文档整理
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第24讲_js案例讲解_js自定义函数_学习笔记_源代码图解_PPT文档整理
- <学习html>第八天笔记-HTML5文档类型和字符集、HTML5新标签与特性(常用新标签、新增input type属性值、常用新属性、多媒体标签)
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第20讲_js基本数据类型_js运算符1_学习笔记_源代码图解_PPT文档整理
- 【js学习笔记-115】----html5之地理位置
- HTML5学习_day05(1)--html浮动之文档布局
- j2ee学习笔记之前端(js、jQuery、html、html5、webService、ajax、css)—— 一直会补充
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第22讲_js三大流程控制(顺序流程、分支控制、循环控制)_学习笔记_源代码图解_PPT文档整理
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第30讲_类和对象细节_创建对象的几种方式_js对象内存分析_学习笔记_源代码图解_PPT文档整理
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第26讲_js函数调用过程内存分析_js函数细节_学习笔记_源代码图解_PPT文档整理
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第24讲_js案例讲解_js自定义函数_学习笔记_源代码图解_PPT文档整理
- 史上最全html及html5的学习资料文档收集整理包括介绍和下载
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第23讲_js三大流程控制(顺序流程、分支控制、循环控制)_js调式技巧_学习笔记_源代码图解_PPT文档整理
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第28讲_js二维数组_js冒泡排序_二分查找_学习笔记_源代码图解_PPT文档整理
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第29讲_二维数组转置_js面向对象编程介绍 类(原型对象)和对象_学习笔记_源代码图解_PPT文档整理
- 该把JS文件放在HTML文档的那个位置
- html5学习canvas基本使用:div在js前面;localStorage存储根据浏览器在不同的位置;应用程序缓存;placeholder 属性提供一种提示(hint),描述输入域所期待的值。
- 韩顺平_轻松搞定网页设计(html+css+javascript)_第27讲_js一维数组_一维数组细节_学习笔记_源代码图解_PPT文档整理