在学习dom操作中,当试图获取body元素时,发现获取的对象为空,下面是我的代码:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
<script type="text/javascript">
var body = document.getElementsByTagName("body").item(0);
alert(body);
</script>
</head>
<body id="body">
<p>Hello world!</p>
</body>
</html>
运行,弹出null提示框。
代码很简单,原因其实也很简单,因为在执行script中的静态(全局)js脚本时,dom对象中的body元素还没有构建,所以为null。
如果把这段代码放在js函数中(区别于js静态(全局)代码),比如onload中,如下所示:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
<script type="text/javascript">
window.onload = function() {
var body = document.getElementsByTagName("body").item(0);
alert(body);
};
</script>
</head>
<body id="body">
<p>Hello world!</p>
</body>
</html>
这样就不会有问题了。
刚开始学ajax,问题虽小,倒也折腾了我半天,希望给对初学者有所帮助,高手可以无视:)。
分享到:
相关推荐
可以是插入一个元素,也可以是创建一个元素(要创建的话请使用“DomHelper配置项对象”作为参数传入),总之,这个元素作为当前元素的第一个子元素出现。 var el = Ext.get('elId1'); // 插入的dom节点作为第一个...
* 获取结构标签集合 * * @return */ public ArrayList<HtmlFlag> getArrayList() {} /** * 更新标签指定属性的值 * * @param path * @param att * @param value * @return */ public boolean ...
JavaScript电子书,包括了JavaScript的大部分知识,可以帮助读者快速入门。内容如下: 第1章 JavaScript语言概述 1.1 JavaScript是什么 ...8.3.1 获取body元素对象信息 8.3.2 常见属性和方法汇总 8.4 本章小结
源文件程序天下JAVASCRIPT实例自学手册 第1章 JavaScript语言概述 1.1 JavaScript是什么 1.1.1 JavaScript简史 1.1.2 JavaScript有何特点 ...8.3.1 获取body元素对象信息 8.3.2 常见属性和方法汇总 8.4 本章小结
1,如果是根元素、body元素或元素的position是fixed,将返回null; 2,如果是area元素,会返回最接近的map元素; 3,返回至少符合以下一个条件的最接近该节点的元素:1,元素的position不是static;2,是body元素;3...
webgl-上下文 获取一个 WebGLRenderingContext,如果它不存在则返回 null。 类似于 。 //get a webgl context, will be null if not foundvar gl = require ( 'webgl-context' ) ( )if ( gl ) { document . body . ...
5.得到表单中元素的名称和值:document.getElementById("表单中元素的ID號").name(或value) 6.一个小写转大写的JS: document.getElementById("output").value = document.getElementById("input").value.toUpperCase...
5.2.html 使用DOM获取body元素。 5.3.html 获取元素的子节点。 5.4.html 改变div的内容。 5.5.html 获取表格第1行。 5.6.html 获取表格的某列。 5.7.html 修改表格的内容。 5.8.html 无...
5.得到表单中元素的名称和值:document.getElementById( "表单中元素的ID號 ").name(或value) 6.一个小写转大写的JS: document.getElementById( "output ").value = document.getElementById( "input ").value....
javascript 问题集合 Posted on 2006-06-20 19:32 坏坏天堂 阅读(46) 评论(0) 编辑 收藏 所属分类: JavaScript 1.document.write(""); 输出语句 2.JS中的注释为// 3.传统的HTML文档顺序是:document->html->(head...
5.得到表单中元素的名称和值:document.getElementById("表单中元素的ID号").name(或value) 6.一个小写转大写的JS: document.getElementById("output").value = document.getElementById("input").value.toUpperCase...
4.一个浏览器窗口中的DOM顺序是: window->(navigator,screen,history,location,document) 5.得到表单中元素的名称和值: document.getElementById("表单中元素的ID号").name(或value) 6.一个小写转大写的JS: ...
5.得到表单中元素的名称和值:document.getElementById("表单中元素的ID號").name(或value) 6.一个小写转大写的JS: document.getElementById("output").value = document.getElementById("input").value.toUpperCase...
cornerTopDiv: null, cornerRightDiv: null, cornerBottomDiv: null, cornerLeftDiv: null, mapPosition: null, outlineDiv: null, mapWidth: 0, mapHeight: 0, mapRatio: 0, startX:...
js关闭浏览器窗口 js关闭浏览器窗口,不弹出提示框。支持ie6+,火狐,谷歌等浏览器。 代码如下: <... <head /> <body>... 火狐默认不支持js关闭浏览器窗口,可以在about:config中将dom
父元素是指包含有其它元素的元素,被包含的元素称为它的子元素。看上面的"结构树",其中是父元素,,是它的子元素,而又是的子元素。象这样没有包含任何子元素的最后一级元素我们也称之为"页元素"。 4.Parser(解析...
5.得到表单中元素的名称和值:document.getElementById("表单中元素的ID号").name(或value) 6.一个小写转大写的JS: document.getElementById("output").value = document.getElementById("i nput").value....
5.得到表单中元素的名称和值:document.getElementById("表单中元素的ID号").name(或value) 6.一个小写转大写的JS: document.getElementById("output").value = document.getElementById("input").value.toUpperCase...
5.得到表单中元素的名称和值:document.getElementById("表单中元素的 ID 6. 一 个 小 写 转 大 写 的 & #106s: document.getElementByI document.getElementById("input").&#118alue.toUpperCase(); 7.JS 中的值...
#麦克斯韦模态## Bootstrap和Backbone供电的模态视图 ##安装npm install maxwell-modal ##用法共有三种类型的模态模态这是基本的模态。...content: null , /** * body html * @type { DOM/Function } */