《DOM Scripting》学习笔记-——第七章 动态创建html内容
本章内容:
1、动态创建html内容的“老”技巧:document.write()和innerHTML属性
2、DOM方法:createElement(),creatTextNode(),appendChild(),insertBefore().
一、document.write()
语法:document.write(“ ”)
document.write(变量)
缺点:违背了“分离js”原则。即使把document.write语句挪到外部函数里,还是需要在html文档的<body>部分使用<script>标签才能调用那个函数。
二、innerHTML属性


innerHTML属性没有细节可言,要想获得细节,就必须使用DOM方法和属性。
三、DOM提供的方法
1、createElement()方法
语法:document.createElement(nodeName)
举例:document.createElement("p");
var para = document.createElement("p");
window.onload = function() {
var para = document.createElement("p");
var info = "nodeName: ";
info+= para.nodeName;
info+= " nodeType: ";
info+= para.nodeType;
alert(info);
}

2、appendChild()方法
语法:parent.appendChild(child)
举例:var testdiv = document.getElementById("testdiv");
var para = document.createElement("p");
testdiv.appendChild(para);
3、createTextNode()方法
语法:document.creatTextNode(text)
举例:var txt = document.createTextNode("Hello world");
para.appendChild(txt);
window.onload = function() {
var para = document.createElement("p");
var testdiv = document.getElementById("testdiv");
testdiv.appendChild(para);
var txt = document.createTextNode("Hello world");
para.appendChild(txt);
}
综合举例:
<p>This is <em>my</em> content.</p>

这些html内容对应着一个p元素节点,它本身又包含以下几个子节点
1,一个文本节点,其内容是“This is”
2,一个元素节点,这个元素节点的名字是“em”;这个元素节点还包含着:
(1),一个文本节点,内容是“my”
3,一个文本节点,其内容是“ content.”(第一个字符是空格,最后一个字符是英文句号)。
window.onload = function() {
var para = document.createElement("p");
var txt1 = document.createTextNode("This is ");
para.appendChild(txt1);
var emphasis = document.createElement("em");
var txt2 = document.createTextNode("my");
emphasis.appendChild(txt2);
para.appendChild(emphasis);
var txt3 = document.createTextNode(" content.");
para.appendChild(txt3);
var testdiv = document.getElementById("testdiv");
testdiv.appendChild(para);
}
《DOM Scripting》学习笔记-——第七章 动态创建html内容的更多相关文章
- 第七章 动态创建HTML内容
javascript也可以改变网页的结构和内容 document.write()方法 可以方便快捷地把字符串插入到文档里 document.write("<strong>hell ...
- JVM学习笔记-第七章-虚拟机类加载机制
JVM学习笔记-第七章-虚拟机类加载机制 7.1 概述 Java虚拟机描述类的数据从Class文件加载到内存,并对数据进行校验.转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这个过程被 ...
- [Python学习笔记][第七章Python文件操作]
2016/1/30学习内容 第七章 Python文件操作 文本文件 文本文件存储的是常规字符串,通常每行以换行符'\n'结尾. 二进制文件 二进制文件把对象内容以字节串(bytes)进行存储,无法用笔 ...
- o'Reill的SVG精髓(第二版)学习笔记——第七章
第七章:路径 所有描述轮廓的数据都放在<path>元素的d属性中(d是data的缩写).路径数据包括单个字符的命令,比如M表示moveto,L表示lineto.接着是该命令的坐标信息. 7 ...
- d2.js学习笔记(七)——动态SVG坐标空间
目标 在这一章,我们将学习如何使SVG坐标空间是动态的,这样我们的数据可视化不论数据是什么,都始终是可见的. 我们会使得SVG坐标空间尺度上调或下调来适于我们的数据. 三个SVG长方形 我们就从三个长 ...
- 学习笔记 第七章 使用CSS美化超链接
第7章 使用CSS美化超链接 学习重点 认识超链接 熟悉伪类 定义超链接样式 能够灵活设计符合页面风格的链接样式 7.1 定义超链接 在HTML5中建立超链接需要两个要素:设置为超链接的网页元素和 ...
- 《metasploit渗透测试魔鬼训练营》学习笔记第七章--社会工程学
五.社工工程学 5.1社会工程系框架 5.1.1信息搜集 maltego是一个高度自动化的信息搜集工具,集成在BT5中,如果国内网络环境使用时 ...
- 《机器学习实战》学习笔记第七章 —— AdaBoost元算法
主要内容: 一.提升方法与AdaBoost算法的简介 二.AdaBoost算法 三.代码解释 一.提升方法与AdaBoost算法的简介 1.提升方法:从弱学习算法出发,反复学习,得到一系列弱分类器(又 ...
- unix高级环境编程学习笔记第七章(未完)
博客地址:http://www.cnblogs.com/zengjianrong/p/3222081.html 7.1 引言 Main函数调用:命令行参数:存储器布局:如何分配存储器:进程使用env: ...
随机推荐
- Handlebars.js registerHelper
Handlebars.registerHelper('link', function (text, url) { text = Handlebars.Utils.escapeExpression(te ...
- 关于Asset Library核心功能的一些计划
Asset Library是公司计划中的一个网站,用于存放图像,视频,三维文件等资产,在之前的一个多月中我写完了该网站的后台及部分前端,现在就剩最后一部分了,这也是最棘手最核心的部分,就是在网页上快速 ...
- linux 管道通信
下面举linux下有名管道通信的代码. ----------------------------------------- fifo_read.c =========== #include<er ...
- 提问:MicrosoftUnderlying input stream returned zero bytes
报错信息:MicrosoftUnderlying input stream returned zero bytes 报错截图: 查阅资料后,提示 jdbc的bug,不能将一个"NULL&qu ...
- Redis简单入门
什么是Reids 就是一个数据库,将数据保存在内存中 优点 支持数据持久化 支持丰富的数据类型 (字符串,哈希,列表,集合) 和Me的区别:Me是简单版的Redis,Me不支持持久化.Me仅仅支持字符 ...
- English 翻译到Vyeshal的软件
我或许可以做一个从英语到Vyeshal的翻译软件2333
- 使用Microsoft自带的小工具将可执行文件(.exe)注册为系统服务
首先,我们从Microsoft下载Windows Resource Kits,Download 下载完成后,运行rktools.exe进行安装. 安装完成后,我们打开安装目录,将其中的"in ...
- 狗鱼IT教程:推介最强最全的Spring系列教程
Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建. 简单来说,Spring是一个分层的JavaSE/EEfull-stack( ...
- RN-进阶
ActivityIndicator 显示一个圆形的loading的提示符 react-native-tab-navigator npm install react-native-tab-navigat ...
- 使用Python+turtle绘制同心圆
问题描述:数学定义上是指:同一平面上同一圆心而半径不同的圆.简单来说就是:圆心相同半径不同的圆,如果几个圆的圆心是同一点,那么这几个圆就叫做同心圆. 本文使用turtle绘制一个类似“箭靶”的同心圆. ...