浅谈script在html中的摆放位置

所属分类: 网页制作 / HTML/Xhtml 阅读数: 1947
收藏 0 赞 0 分享

以前一直觉得script在html中的任何位置都可以,今天做一个需求的时候才更正了自己的错误思想啊--script的位置也不是随便放的。

首先是想实现一个select标签,有是和无两个option,但是在初始化的时候要求select标签默认选择空值,所以我在点击的时候加了一个方法让他把空值删掉:

XML/HTML Code复制内容到剪贴板
  1. <!DOCTYPE html>  
  2. <html>  
  3. <head>  
  4. <script src="jquery/jquery-1.11.1.min.js"></script>  
  5. </head>  
  6. <script>  
  7. $('#checkcash').click(function () {   
  8.         if ($('#checkcash').val() == '0') {   
  9.             $("#checkcash option[value='0']").remove();   
  10.         }   
  11.     });   
  12.     $("#alert").click(function(){   
  13.     alert("1123");   
  14.     })   
  15. </script>  
  16. <body>  
  17.  是否已提现 <select id="checkcash"   style="width: 181px">  
  18.                             <option selected="selected" value="0"></option>  
  19.                             <option value="1"></option>  
  20.                             <option value="2"></option>  
  21.                             </select>  
  22.                                 
  23.                             <input type='button' id='alert' value="anwo">  
  24. </body>  
  25.   
  26.   
  27. </html>  

但是这样并不能达到想要的效果,起初以为是jquery语法错误还一直在网上查,改,但是都不管用,后来突然想到是不是应该把script放到后面,试了一下,结果果真ok了,这才恍然大悟,原来不是这样的。

后来查了一下原因是因为,html文件是自上而下的执行方式,但引入的css和javascript的顺序有所不同,css引入执行加载时,程序仍然往下执行,而执行到<script>脚本是则中断线程,待该script脚本执行结束之后程序才继续往下执行。所以,一般将script放在body之后是因为避免长时间执行script脚本而延迟阻塞。而有一些页面的效果的实现,是需要预先动态的加载一些js脚本,所以这些脚本应该放在<body>之前。其次,不能将需要访问dom元素的js放在body之前,因为此时还没有开始生成dom,所以在body之前的访问dom元素的js会出错,或者无效。就是因为这个,在dom没生成好时我就给它添加了方法,才导致这样。

真的应该多学习很多地方以为所以然了,却没深究。以后还要加油!

 ps:其实还有另外一种方法,那就是用jquery的初始化页面方法,把上面给标签添加的点击事件加入到$(function(){})中也是可以的,原理和上面是一样的,这个方法是等页面加载好了才执行,所以不管放在哪都可以了!

以上这篇浅谈script在html中的摆放位置就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

DOCTYPE 文档类型声明(网页爱好者必看)

文档类型声明与不声明,将会导致你的css或js都无法正常安装要求显示。所以好多网站都声明了文档类型。这样做有什么好处大家可以看看下面的文章。
收藏 0 赞 0 分享

纯HTML标签你熟悉多少?

HTML标签很多,可是实际上常用的却就那么十几二十个,很多标签的功能渐渐的被大家忽略了.然后,如果在适当的时候,用一用,还是能在一定程序上给我们的页面设计带来一点小小的方便的.
收藏 0 赞 0 分享

HTML元素的ID和Name属性的区别

ID就像是一个人的身份证号码,而Name就像是他的名字,ID显然是唯一的,而Name是可以重复的。
收藏 0 赞 0 分享

HTML meta的大作用

meta是用来在HTML文档中模拟HTTP协议的响应头报文。meta 标签用于网页的与中,meta 标签的用处很多。
收藏 0 赞 0 分享

HTML标签tbody的用法与说明

tbody 标签表格主体(正文)。该标签用于组合 HTML 表格的主体内容。
收藏 0 赞 0 分享

HTML 特殊字符转换表

html下特殊字符转换表
收藏 0 赞 0 分享

HTML基础 HTML的组成结构

HTML是网页主要的组成部分,基本上一个网页都是由HTML语言组成的,所以要学习网站怎样建设,必须从网页的基本语言学起。
收藏 0 赞 0 分享

HTML基础之HTML内容细则

我们在第一讲里概括了一下网页的主要框架,现在我们来详细的研究网页的内部细则
收藏 0 赞 0 分享

Shtml 精简教程

SSI有什么用? 之所以要扯到ssi,是因爲shtml--server-parsed HTML 的首字母缩略词。包含有嵌入式服务器方包含命令的 HTML 文本。在被传送给浏览器之前,服务器会对 SHTML 文档进行完全地读取、分析以及修改。
收藏 0 赞 0 分享

浅谈html table 标签

总的来说,table是个复杂的东西,关于它的主题也很多。我想简单的复习一下table。
收藏 0 赞 0 分享
查看更多