DOM学习之充实文档内容
HTML代码
<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>充实文档内容</title>
<link rel="stylesheet" href="css/typography.css">
</head> <body>
<h1>what is the Document object Model?</h1>
<p>
The<abbr title="World Wide Web Consortium">W3C</abbr>defines the<abbr title="Document object Model">DOM</abbr>as:
</p>
<blockquote cite="www.w3c.org/DOM/">
<p>
Aplatform- and language-neutral interface that will allow programs and scripts to dynamically
access and update the content,structure and style of documnents.
</p>
</blockquote>
<p>
It is an <abbr title="Application programming Interface">API</abbr>
that can be used to navigate <abbr title="HyperText Markup Language">HTML</abbr>
and <abbr title="eXtensible Markup Language">XML</abbr>documents.
</p>
<script type="text/javascript" src="js/displayAbbreviations.js"></script>
</body> </html>
JavaScript代码
//页面加载完时执行函数
function addloadevent(func) { //参数放入你界面加载完要执行的函数
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
oldonload();
func();
}
}
function displayAbbreviations() {
// 检查元素是否兼容
if (!document.createElement || !document.getElementsByTagName || !document.createTextNode) return false;
//获取文档所有abbr标签
var abbreviations = document.getElementsByTagName("abbr"); //判断如果文档没有abbr标签,函数执行结束。
if(abbreviations.length < 1) return false;
//创建一个数组用来存储abbr的title属性值
var defs = new Array();
//便利abbr标签
for(var i = 0 ; i<abbreviations.length;i++){
//获取abbr中的属性值存入definition变量中
var definition = abbreviations[i].getAttribute("title");
//获取abbr中的缩略语句
var key = abbreviations[i].lastChild.nodeValue;
//将2个变量存入数组中,key用作数组元素的小标(键)来存储,definition用作数组元素的值来存储
defs[key] = definition;
}
//创建标记节点
var dlist = document.createElement("dl");
//循环取出数组中的键 和值
for (key in defs) {
var definition = defs[key];
//创建一个dt标签
var dtitle = document.createElement("dt");
//用变量key的值创建一个文本节点
var dtitle_text = document.createTextNode(key);
dtitle.appendChild(dtitle_text);
//同样操作 ↑ 创建dd标签
var ddesc = document.createElement("dd");
var ddesc_text = document.createTextNode(definition);
ddesc.appendChild(ddesc_text);
//创建好的标签插入dl中
dlist.appendChild(dtitle);
dlist.appendChild(ddesc);
}
//创建一个H2标题
var header = document.createElement("h2");
var header_text = document.createTextNode("Abbreviations");
header.appendChild(header_text);
//创建好的列表和标题插入body中
document.body.appendChild(header);
document.body.appendChild(dlist); }
addloadevent(displayAbbreviations);
DOM学习之充实文档内容的更多相关文章
- python 学习之FAQ:文档内容写入报错
2017.3.29 FAQ 1. 文档内容写入报错 使用with open() as file: 写入文档时,出现'\xa9'特殊字符写入报错,通过print('\xa9')打印输出“©”. > ...
- 【Javascript DOM读书笔记】chapter8 充实文档内容
本章目的 作者举出了第一个实例,为一篇 web 页面动态创建缩略语(abbreviation)的列表.大家知道,我们可以使用 <abbr>...</abbr> 来指示一个缩略语 ...
- DOM操作-遍历HTML文档内容
基础: JS nodeType返回类型:http://blog.csdn.net/qyf_5445/article/details/9232907 代码: <!DOCTYPE html> ...
- java操作office和pdf文件java读取word,excel和pdf文档内容
在平常应用程序中,对office和pdf文档进行读取数据是比较常见的功能,尤其在很多web应用程序中.所以今天我们就简单来看一下Java对word.excel.pdf文件的读取.本篇博客只是讲解简单应 ...
- 运用 Range 对象处理 Word 文档内容
运用 Range 对象处理 Word 文档内容 在所有 Office 应用程序中,Microsoft Word 可能是应用最广泛的应用程序,它还经常在自定义 Office 解决方案中扮演重要的角色 ...
- apidoc学习(接口文档定义取代word)
apidoc的安装,参考:https://blog.csdn.net/qq_36386771/article/details/82149848 生产文档,需要先编写一个apidoc.json对接口文档 ...
- 织梦DedeCMS首页调用单页文档内容的方法
很多使用织梦dedecms单页文档功能的朋友都想知道如何在织梦首页调用单页文档的内容,下面就教大家具体的实现方法: 具体步骤如下: 首先在首页模板需要显示单页文档内容的地方插入如下代码: {dede: ...
- Mongodb(2)创建数据库,删除数据库,创建集合,删除集合,显示文档内容
显示所有数据库列表:show dbs > show dbs local .078GB runoob .078GB > 显示当前数据库:db > db runoob > 显示所有 ...
- Citrix 服务器虚拟化之二十八 XenApp6.5发布文档内容
Citrix 服务器虚拟化之二十八 XenApp 6.5发布文档内容 XenApp可发布以下类型的资源向用户提供信息访问,这些资源可在服务器或桌面上虚拟化: 1) 服务器桌面:发布场中服务器的整个 ...
随机推荐
- iOS:让标题栏背景图片适应iOS7
From google: If your app uses a custom image as the background of the bar, you'll need to provide a ...
- AngularJS:实现页面滚动到底自动加载数据的功能
要实现这个功能,可以通过https://github.com/sroze/ngInfiniteScroll这个第三方控件来实现.步骤如下: 1. 下载ng-infinite-scroll.js程序ht ...
- AppFuse 3常见问题与解决方法
非常长一段时间没做SSH项目了.近期抽出时间看了一下升级到3.x的appfuse,对新版本号使用过程中出现的一些问题进行了排查.汇总例如以下.以备后用.本文原文出处: http://blog.csdn ...
- double型转换成string型
double型转换成string型 题目描写叙述: 如有一个函数.其可接受一个long double參数,并将參数转换为字符串.结果字符串应保留两位小数,比如,浮点值123.45678应该生成&quo ...
- 系统服务-----Activity服务的获取getSystemService
android的后台存在非常多service,它们在系统启动的时候被SystemServer开启.来为系统的正常执行做支撑.Activity中要调用这些service就得使用getSystemServ ...
- Git版本号控制:Git分支处理
http://blog.csdn.net/pipisorry/article/details/46958699分支的意义创建分支能够避免提交代码后对主分支的影响,同一时候也使你有了相对独立的开发环境. ...
- opencv源代码分析之二:cvhaartraining.cpp
我使用的是opencv2.4.9.安装后.我的cvboost..cpp文件的路径是........\opencv\sources\apps\haartraining\cvhaartraining.cp ...
- Android+Jquery Mobile学习系列(9)-总结和代码分享
经过一个多月的边学习边练手,学会了Android基于Web开发的毛皮,其实开发过程中用Android原生API不是很多,更多的是HTML/Javascript/Css. 个人觉得基于WebView的J ...
- A simple problem(并查集判环)
http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2497 题意:给定一些点和边的关系,判断S点是否 ...
- 线性预测与Levinson-Durbin算法实现
在学习信号处理的时候,线性预测是一个比较难理解的知识点,为了加快很多朋友的理解,这里给出Levinson-Durbin算法的线性预测实现和一个测试Demo,Demo中很明确的把输入信号.预测信号.预测 ...