javascript代码放置位置对程序的影响
在编写html文档时,javascript可以放置的位置有两个地方<head>或者<body>,但是放置的地方,会对 JavaScript 代码的正常执行会有一定影响。由于 HTML 文档是由浏览器从上到下依次载入的,javascript的放置位置主要影响获取网页元素。如果你的代码中包含获取网页元素的代码例如document.getElementById(),那么你需要确保你的javascript代码要在你想要获取的元素的位置之后。如过在你想要获取的元素的位置之前调用这个些代码,由于网页还没加载,造成你无法获取那个元素,下面用例子说明:
例如:
<html>
<head>
<meta http-equiv="content-type", content="html/text; charset=UTF-8">
<title>测试</title> <script >
document.getElementById("ceshi").onclick=function(){
document.getElementById("text").innerHTML="海阔凭鱼跃,天高任鸟飞";
}
</script>
</head>
<body> <p id="text">提示</p>
<button id="ceshi" >测试</button> </body>
</html>
这时候程序是错误的,因为javascript代码加载在前,所以document.getElementById("ceshi") 会出现错误。因为此时页面还没加载,找不到这个元素。
放在<body>中,但是在想要获取的元素之前,程序也是错误的
<html>
<head>
<meta http-equiv="content-type", content="html/text; charset=UTF-8">
<title>测试</title>
</head>
<body>
<script >
document.getElementById("ceshi").onclick=function(){
document.getElementById("text").innerHTML="海阔凭鱼跃,天高任鸟飞"; }
</script>
<p id="text">提示</p>
<button id="ceshi" >测试</button> </body>
</html>
放在<p>元素之后,程序正确
<html>
<head>
<meta http-equiv="content-type", content="html/text; charset=UTF-8">
<title>测试</title>
</head>
<body> <p id="text">提示</p>
<button id="ceshi" >测试</button>
<script >
document.getElementById("ceshi").onclick=function(){
document.getElementById("text").innerHTML="海阔凭鱼跃,天高任鸟飞"; }
</script>
</body>
</html>
但是如果用jQuery或者是通过定义函数的形式可以不用考虑javascript代码的放置位置。比如
html>
<head>
<meta http-equiv="content-type", content="html/text; charset=UTF-8">
<title>测试</title>
<script>
function abc(){
document.getElementById("text").innerHTML="海阔凭鱼跃,天高任鸟飞"; }
</script>
</head>
<body> <p id="text">提示</p>
<button id="ceshi" onclick="abc()" >测试</button> </body>
</html>
<html>
<head>
<meta http-equiv="content-type", content="html/text; charset=UTF-8">
<title>测试</title>
<script src="jquery-1.12.4.min.js"></script>
<script>
$(document).ready(function(){
$("button").click(function(){ $("#text").html("海阔凭鱼跃,天高任鸟飞"); });
});
</script>
</head>
<body> <p id="text">提示</p>
<button id="ceshi" onclick="abc()" >测试</button> </body>
</html>
javascript代码放置位置对程序的影响的更多相关文章
- JS代码放置位置、变量与数据类型、运算符与逻辑表达运算符
内容简要: 1.JS代码放置位置的问题: 2.变量与数据类型: 3.运算符与逻辑表达式的运算符 我的位置 全局问题:为何在网页推荐位置(一般在<head></head>内部 ...
- JavaScript代码存放位置
JavaScript代码存放位置 HTML的head中 HTML的body代码块底部(推荐) 由于Html代码是从上到下执行,如果Head中的js代码耗时严重,就会导致用户长时间无法看到页面,如果放置 ...
- Python读写文件的路径,关于os.chdir(path)位置对程序的影响,
关于os.chdir(path)位置对程序的影响,import os import time#直接把path放到open()里面 def fu0(): star = time.time() for i ...
- javascript标签放置位置
首先:放置位置哪里都能放 但是js代码很有可能不起作用:例如:往id为span的标签中定时插入数字 var time=document.getElementById("span") ...
- 拼团商品列表页 分析 js代码行位置对执行的影响和window.onload的原理 setTimeout传参
w TypeError : Cannot set property 'innerHTML' of nullTypeError : Cannot set property 'value' of null ...
- 分析JavaScript代码应该放在HTML代码哪个位置比较好
本文总结了多种放置JS代码的方法,需要的朋友可以参考下 在哪里放置 JavaScript 代码? 通常情况下,JavaScript 代码是和 HTML 代码一起使用的,可以将 JavaScript 代 ...
- JavaScript代码放在HTML代码不同位置的差别
通常情况下,JavaScript 代码是和 HTML 代码一起使用的,可以将 JavaScript 代码放置在 HTML 文档的任何地方.但放置的地方,会对 JavaScript 代码的正常执行会有一 ...
- 如何正确的加载和执行 JavaScript 代码
无论当前 JavaScript 代码是内嵌还是在外链文件中,页面的下载和渲染都必须停下来等待脚本执行完成.JavaScript 执行过程耗时越久,浏览器等待响应用户输入的时间就越长.浏览器在下载和执行 ...
- JavaScript代码-----位置决定结果
刚学JavaScript的时候,即使照着书上的代码敲一遍,运行的时候,得到的结果要么总是和书上的结果不同,要么是没产生效果.学到后面,才明白到其实程序的代码是没错的,错误的是代码的位置! 首先看下面这 ...
随机推荐
- 使用bootstrap模态框实现浮动层
authour: 陈博益 updatetime: 2015-04-22 06:52:15 friendly link: http://v3.bootcss.com/javascript/#modals ...
- IIS6中ASP.NET实现对静态文件的授权控制
后台使用html+ashx+js开发 在VS2008调试并未发现问题 发布到IIS6才发现不需要验证也能访问html文件 解决这个问题配置IIS即可了 方法如下: IIS配置:网站->属性-&g ...
- C语言学习笔记--类型定义&联合
一.类型定义 C语言自定义数据类型 (typedef) C语言提供一个叫做typedef的功能来声明一个已有的数据类型的新名字. typedef int Length; 使得Length成为int类型 ...
- MYSQL用SOURCE命令时导入乱码的问题解决
现在遇到了,但记得上次辉哥说过的方法,在MYSQL命令行里输入: set names utf8; 再执行SOURCE命令,搞定!
- 龙杰ACR122S NFC读卡器
龙杰智能卡有限公司(ACS,龙杰智能卡控股有限公司之全资附属公司,香港联交所上市编号:8210)创立于1995年,是亚太地区第一大.全球三大智能卡读写器供应商之一.ACS被<福布斯亚洲>杂 ...
- 【归并排序】【逆序数】HDU 5775 Bubble Sort
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5775 题目大意: 冒泡排序的规则如下,一开始给定1~n的一个排列,求每个数字在排序过程中出现的最远端 ...
- NET设计模式(2):单件模式(Singleton Pattern)[转载]
单件模式(Singleton Pattern) ——.NET设计模式系列之二 Terrylee,2005年12月07日 概述 Singleton模式要求一个类有且仅有一个实例,并且提供了一个全局的访问 ...
- Linux网卡驱动架构分析
一.网卡驱动架构 由上到下层次依次为:应用程序→系统调用接口→协议无关接口→网络协议栈→设备无关接口→设备驱动. 二.重要数据结构 1.Linux内核中每一个网卡由一个net_device结构来描述. ...
- 获取git的当前分支名称
git branch | grep \"*\" | awk -F \"_\" '{print $2}'
- [LeetCode] 30. Substring with Concatenation of All Words 解题思路 - Java
You are given a string, s, and a list of words, words, that are all of the same length. Find all sta ...