javascript DOM编程艺术学习笔记(4)缩略语列表:
2014-04-18 13:51
916 查看
*****
缩略语列表:
主要把文本段落中的缩略词的标题名称给提取出来;
是通过DOM来生成的,假如浏览器不支持js则会不显示;
步骤:
1.遍历这份文档的所有abbr元素
2.保存每个abbr元素的title属性
3.保持每个abbr元素的文本
4.创建一个“定义列表”元素,即(dl元素)
5.遍历刚才保存title属性与abbr包含文本
6.创建“定义标题”元素(即dt元素)
7.把abbr元素的文本插入到这个dt元素中
8.创建“定义描述”元素(即dd元素)
9.把title属性插入dd元素
10.把dt元素追加到第四步创建的dl元素上
11.把dd元素追加到第四创建的dl元素上
12.把dl元素追加到body元素上
<!-- HTML代码 -->
<body>
<h1>测试缩略语列表</h1>
<p>
<abbr title="万维网">w3c</abbr>是啊看风景拉看风景啊垃圾分类LJL:l jdfaj;lf afdkja;lfj ;a fdja f;akfa; www万维网;
</p>
<p>
<abbr title="文档对象模型">DOM</abbr>kasljfla;jdfsa;ljdfaljd;adlakjdfla;lajfd;ljflajdf;a是文档对象模型;
</p>
<p>
<abbr title="文档接口">API</abbr>fakldja;dljakfjdlsdjlsadkjlsjdlasjdlajs是文档接口;
</p>
</body>
//JSd代码:
function displayAbbrs(){
// 1.遍历这份文档的所有abbr元素
var abbrs=document.getElementsByTagName("abbr");
//defs存储abbr的title与文本(一箭双雕)
var defs=new Array();
for (var i = 0; i < abbrs.length;i++) {
//由于ie浏览器6不支持abbr元素,则此时abbr子元素结点个数为0;
//则此时需要跳出该层循环
if(abbrs[i].childNodes.length<1){
continue;
}
// 2.保存每个abbr元素的title属性
var definition=abbrs[i].getAttribute("title");
// 3.保持每个abbr元素的文本
var key=abbrs[i].firstChild.nodeValue;
//便于后面的循环使用
defs[key]=definition;
}
// 4.创建一个“定义列表”元素,即(dl元素)
var dlist=document.createElement("dl");
// 5.遍历刚才保存title属性与abbr包含文本
for(key in defs){
// 6.创建“定义标题”元素(即dt元素)
var dtitle=document.createElement("dt");
var dtitleText=document.createTextNode(key);
// 7.把abbr元素的文本插入到这个dt元素中
dtitle.appendChild(dtitleText);
// 8.创建“定义描述”元素(即dd元素)
var ddes=document.createElement("dd");
var ddesText=document.createTextNode(defs[key]);
// 9.把title属性插入dd元素
ddes.appendChild(ddesText);
// 10.把dt元素追加到第四步创建的dl元素上
dlist.appendChild(dtitle);
// 11.把dd元素追加到第四创建的dl元素上
dlist.appendChild(ddes);
}
//由于ie6上面abbr不支持导致dlist的元素子节点数也会为0;
//则此时ie6会屏蔽该功能,如果没有这些判断语句会报错
if(dlist.childNodes.length<1){
return false;
}
// 12.把dl元素追加到body元素上
var Contant=document.getElementsByTagName("body")[0];
//创建一个新定义标题说明
var header=document.createElement("h2");
var headerText=document.createTextNode("下面的内容时通过DOM生成的");
header.appendChild(headerText);
Contant.appendChild(header);
Contant.appendChild(dlist);
}
addLoadEvent(displayAbbrs);
缩略语列表:
主要把文本段落中的缩略词的标题名称给提取出来;
是通过DOM来生成的,假如浏览器不支持js则会不显示;
步骤:
1.遍历这份文档的所有abbr元素
2.保存每个abbr元素的title属性
3.保持每个abbr元素的文本
4.创建一个“定义列表”元素,即(dl元素)
5.遍历刚才保存title属性与abbr包含文本
6.创建“定义标题”元素(即dt元素)
7.把abbr元素的文本插入到这个dt元素中
8.创建“定义描述”元素(即dd元素)
9.把title属性插入dd元素
10.把dt元素追加到第四步创建的dl元素上
11.把dd元素追加到第四创建的dl元素上
12.把dl元素追加到body元素上
<!-- HTML代码 -->
<body>
<h1>测试缩略语列表</h1>
<p>
<abbr title="万维网">w3c</abbr>是啊看风景拉看风景啊垃圾分类LJL:l jdfaj;lf afdkja;lfj ;a fdja f;akfa; www万维网;
</p>
<p>
<abbr title="文档对象模型">DOM</abbr>kasljfla;jdfsa;ljdfaljd;adlakjdfla;lajfd;ljflajdf;a是文档对象模型;
</p>
<p>
<abbr title="文档接口">API</abbr>fakldja;dljakfjdlsdjlsadkjlsjdlasjdlajs是文档接口;
</p>
</body>
/*CSS代码*/ abbr{ text-decoration: underline; background-color: yellow; }
//JSd代码:
function displayAbbrs(){
// 1.遍历这份文档的所有abbr元素
var abbrs=document.getElementsByTagName("abbr");
//defs存储abbr的title与文本(一箭双雕)
var defs=new Array();
for (var i = 0; i < abbrs.length;i++) {
//由于ie浏览器6不支持abbr元素,则此时abbr子元素结点个数为0;
//则此时需要跳出该层循环
if(abbrs[i].childNodes.length<1){
continue;
}
// 2.保存每个abbr元素的title属性
var definition=abbrs[i].getAttribute("title");
// 3.保持每个abbr元素的文本
var key=abbrs[i].firstChild.nodeValue;
//便于后面的循环使用
defs[key]=definition;
}
// 4.创建一个“定义列表”元素,即(dl元素)
var dlist=document.createElement("dl");
// 5.遍历刚才保存title属性与abbr包含文本
for(key in defs){
// 6.创建“定义标题”元素(即dt元素)
var dtitle=document.createElement("dt");
var dtitleText=document.createTextNode(key);
// 7.把abbr元素的文本插入到这个dt元素中
dtitle.appendChild(dtitleText);
// 8.创建“定义描述”元素(即dd元素)
var ddes=document.createElement("dd");
var ddesText=document.createTextNode(defs[key]);
// 9.把title属性插入dd元素
ddes.appendChild(ddesText);
// 10.把dt元素追加到第四步创建的dl元素上
dlist.appendChild(dtitle);
// 11.把dd元素追加到第四创建的dl元素上
dlist.appendChild(ddes);
}
//由于ie6上面abbr不支持导致dlist的元素子节点数也会为0;
//则此时ie6会屏蔽该功能,如果没有这些判断语句会报错
if(dlist.childNodes.length<1){
return false;
}
// 12.把dl元素追加到body元素上
var Contant=document.getElementsByTagName("body")[0];
//创建一个新定义标题说明
var header=document.createElement("h2");
var headerText=document.createTextNode("下面的内容时通过DOM生成的");
header.appendChild(headerText);
Contant.appendChild(header);
Contant.appendChild(dlist);
}
addLoadEvent(displayAbbrs);
相关文章推荐
- javascripts学习笔记(五):用js来实现缩略语列表、文献来源链接和快捷键列表。
- 【DOM编程艺术】显示"缩略语列表"
- JS DOM编程艺术——显示缩略语列表—— JS学习笔记2015-7-16(第85天)
- 缩略语列表
- 利用js来实现缩略语列表、文献来源链接和快捷键列表
- javascript DOM编程艺术--显示缩略语列表
- JavaScript DOM编程艺术—显示“缩略语列表”
- Asp.Net 学习资源列表
- 队列:先进先出列表
- JS获取下拉列表(select)选中项的值和文本
- UVA 题目难度分级列表
- ecshop用户中心我的订单列表中显示商品的名称
- 互联网交流英文缩略语
- AndroidのListView之滑动列表项(点击事件和滑动事件共存)
- 115个Java面试题和答案——终极列表(下)
- Word文档自定义多级目录列表
- python 中列表(list)合并、数组(array)合并
- struts多列列表显示
- 一些缩略语