可以将<script><//script>内容放入<body>中吗?

来源:2-7 编程练习

WingFrank

2016-04-05 15:13

<!DOCTYPE html>

<html>

 <head>

  <title> new document </title>  

  <meta http-equiv="Content-Type" content="text/html; charset=gbk"/>   

 </head> 

 <body> 

<script type="text/javascript">  

  function openWindow(){

      var  w=confirm("打开网页吗?");

   if(w==true)

   {var website=prompt("输入网址","http://www.imooc.com");

   if (website!=false)

       {window.open(website,'_blank','width=400,height=500,menubar=no,toolbar=no');}

   else{alert("结束!");}

   }

   else{alert("结束!");}

  }

  </script> 

 <input type="button" value="新窗口打开网站" onclick="openWindow()" /> 

 </body>

</html>

这样对不对呢?和在<head>中的区别是什么?


写回答 关注

8回答

  • 深红5
    2016-04-05 15:28:11
    已采纳

    script标签放在html的任何位置都可以,但不是放在任何位置都可以运行正常。假设你的js代码要对dom进行操作,如果直接放在head里,那么当浏览器解析到这里的js时,由于body其实根本还没被解析,所以这时js的操作就会报错。所以js里要加上window.onload或者直接把js放在</body>之前

    WingFr...

    谢谢。

    2016-04-05 15:37:22

    共 1 条回复 >

  • 激浪扬波
    2016-04-05 16:00:43

     javascript作为一种脚本语言可以放在html页面中任何位置,但是浏览器解释html时是按先后顺序的,所以前面的script就先被执行。比如进行页面显示初始化的js必须放在head里面,因为初始化都要求提前进行(如给页面body设置css等);而如果是通过事件调用执行的function那么对位置没什么要求的

  • 遥琰
    2016-04-05 15:49:17

    可以放的

  • qq_方晓华_0
    2016-04-05 15:32:24

    最好js放在</body>之前,提升用户体验

  • 激浪扬波
    2016-04-05 15:31:32

    可以的 解析语言  会从上到下依次进行解析 

    放入head会看起来更清晰调试方便

    如果放在dom控件下边就可以直接引用dom控件了 不用写在dom加载完的函数中

  • _Jack_lei
    2016-04-05 15:29:02

    可以,不过一般是放在head里面或者外面,这样好调试

  • 慕神5356855
    2016-04-05 15:28:52

    可以放

  • qq_玩偶_1
    2016-04-05 15:21:31

    可以啊

JavaScript入门篇

JavaScript做为一名Web工程师的必备技术,本教程让您快速入门

741124 学习 · 9865 问题

查看课程

相似问题