java script放在head和body的区别
 
  1,在head中时,所代表的functions只加载而不执行,执行是在某一事件触发后才开始。
2,在body中时,直接加载并执行

典型的区别:
如果有不在函数中的执行语句,比如变量初始化,如果在head中就不会执行。

例如:
[html] view plaincopy

 
  1. <html>  
  2.     <head>  
  3.     <title>第一个Html5视频测试</title>  
  4.         <script type="text/javascript">  
  5.             var myVideo=document.getElementById("video1");  
  6.               
  7.             function playPause()  
  8.             {   
  9.                 if (myVideo.paused)   
  10.                   myVideo.play();   
  11.                 else   
  12.                   myVideo.pause();   
  13.             }   
  14.         </script>   
  15.     </head>  
  16.     <body>  
  17.         <div style="text-align:center;">  
  18.             <button onclick="playPause()">播放/暂停</button>   
  19.             <br/>   
  20.             <video id="video1" src="mov_bbb.ogg" width="320" height="240" controls="controls">  
  21.                 Your browser does not support the video tag.  
  22.             </video>  
  23.         </div>  
  24.     </body>  
  25. </html>  
点击“播放/暂停”时,playPause会被执行,但执行时myVideo对象没有定义的,因为定义和初始化语句被有执行过。
如果要执行,需要放在body
[html] view plaincopy

 
  1. <html>  
  2.     <head>  
  3.     <title>第一个Html5视频测试</title>  
  4.     </head>  
  5.     <body>  
  6.         <div style="text-align:center;">  
  7.             <button onclick="playPause()">播放/暂停</button>   
  8.             <br/>   
  9.             <video id="video1" src="mov_bbb.ogg" width="320" height="240" controls="controls">  
  10.                 Your browser does not support the video tag.  
  11.             </video>  
  12.         </div>  
  13.         <script type="text/javascript">  
  14.             var myVideo=document.getElementById("video1");  
  15.               
  16.             function playPause()  
  17.             {   
  18.                 alert("AA");  
  19.                 if (myVideo.paused)   
  20.                   myVideo.play();   
  21.                 else   
  22.                   myVideo.pause();   
  23.             }   
  24.         </script>   
  25.     </body>  
  26. </html>  
当然,javascript放在head中有其他的好处的,所以,如果必须放在head中,变量初始化需要另外想办法

js script放在head和body里面的区别的更多相关文章

  1. JS代码放在head和body中的区别分析

    最近一直在忙工作,没有时间来写博客了,不过今天做网站的时候碰到一个问题就是JS脚本存放的位置不同其效果不同.起初我没在意这个问题,后来一直解决不了,通过上网与查资料问同事,终于我明白了,原来我碰到了这 ...

  2. vue.js引用出错-script代码块放在head和body中的区别

    这篇随笔是为了记录vue.js引用出错的原因,看到最后原来是vue.js代码放在head中不能正常使用,要最后发现要将其放在body中才行... 原来是js代码放在head和body中的区别问题,占个 ...

  3. 【web性能】js应该放在html页面的什么位置

    所有浏览器在下载JS的时候,会阻止一切其他活动,比如其他资源的下载,内容的呈现等等.至到JS下载.解析.执行完毕后才开始继续并行下载其他资源并呈现内容.   外部JS的阻塞下载 所有浏览器在下载JS的 ...

  4. JavaScript问题01 js代码放在header和body的区别

    1 body和header中JavaScript执行的时机 1.1 header中 放在header中的javascript代码会进行预加载(即:在页面加载之前就会进行),所以需调用才执行的脚本或事件 ...

  5. JS代码放在哪里比较好!

    在页面上加上<script></script>只有2个地方:head中,body体中 如果外部的JS文件,在head中加,写页面特效js放在body后面. <html&g ...

  6. js script中引用其他script

    在需要引用目标js中引用其他js依赖项 可以使用这个方法直接在js顶部加入这一行即可 document.write("<script type='text/javascript' sr ...

  7. js——<script>标签的加载顺序

    用了很久的JavaScript,今天突然就碰见了将一个js文件放在<head></head>与<body></body>标签中,一个不可以执行,一个可以 ...

  8. JavaScript之将JS代码放在什么位置最合适

    1.放到<head></head>标签里面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional/ ...

  9. <script src="../build/browser.min.js"></script> 是用来里面babel工具把ES6的语法转成ES5

    <!DOCTYPE html> <html> <head> <script src="../build/react.js">< ...

随机推荐

  1. 关于Oracle连接超时的问题

    测试环境ORACLE 11.2.0. 如果连接池设置单个连接闲置时间大于数据库连接超时时间,则连接池中的连接发出数据请求时会出现Connect timeout occurred错误, 这是由于连接超时 ...

  2. Java 编程 订单、支付、退款、发货、退货等编号主动生成类

    订单.支付.退款.发货.退货等编号主动生成类 在商城网站中,订单编号的自动生成,ERP中各个单据的编号自动生成,都可以按照一下的方式来自动生成. 第一步:定义常量订单编号前缀.订单编号起始数.订单编号 ...

  3. oracle 审计日志清理

      --进入审计日志目录: cd $ORACLE_BASE/admin/$ORACLE_SID/adump --删除3个月前的审计文件: find ./ -type f -name "*.a ...

  4. MongoDB入门命令

    查看所有数据库 > show dbs admin (empty) local 0.078GB > admin和管理相关, admin和local数据库不要轻易动 选择库 > use ...

  5. [补档][Tyvj 1728]普通平衡树

    [Tyvj 1728]普通平衡树 题目 您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作: 1. 插入x数 2. 删除x数(若有多个相同的数,因只删除一个) 3. 查询x数的 ...

  6. 双向循环链表(C语言描述)(三)

    代码清单 // linkedlist.h #ifndef __LINKEDLIST_H__ #define __LINKEDLIST_H__ #include <assert.h> #in ...

  7. swipe和swiper的区别

    swipe.js--移动WEB页面内容触摸滑动类库 参考http://www.jiawin.com/swipe-mobile-touch-slider 1.swipe只提供简单轮播切换,底部的圆点颜色 ...

  8. Fiddler基础使用二之捕获手机应用https请求

    Fiddler是一款非常流行并且实用的http抓包工具,它的原理是在本机开启了一个http的代理服务器,然后它会转发所有的http请求和响应, 因此,它比一般的firebug或者是chrome自带的抓 ...

  9. netstat命令---输出网络相关的信息

    简介 Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Member ...

  10. java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()