JS DOM:显示文献来源链接表

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Explaining the Ddocument Ob Model</title>

<link href="style08.css" type="text/css" rel="stylesheet" />
</head>
<body>
<h1> What is the Document object Model?</h1>
<p>
The <abbr title="Worle Wide Web Consortium">W3C</abbr> defines the <abbr title="Object Model">DOM</abbr> as:
</p>
<blockquote cite="http://www.w3.org/DOM/">
<P>
A platform- and language-neutral interface that will allow programs 
and scripts to dynamically access and update the content,structure and styles of documents.
</p>
</blockquote>
<p>
It is an <abbr title="Application Programming Interface">API</abbr>
that can be used to navigate <abbr title="eXtensible Markup Language">XML</abbr>
documents.
</p>
<script src="8.5.js"></script> 
</body>
</html>
function addLoadEvent(func){    //不管在页面加载完毕执行多少个函数,都应付自如
 var oldonload = window.onload;
if(typeof window.onload != ‘function‘){
window.onload = func;
}else{
window.onload = function(){
oldonload();
func();
}
}
}

function displayCitations(){
//检查兼容性
if(!document.getElementsByTagName||!document.createElement||!document.createTextNode) return false;

var quotes = document.getElementsByTagName("blockquote");
for( var i = 0;i < quotes.length; i++){
if(!quotes[i].getAttribute("cite")) continue;
var url = quotes[i].getAttribute("cite");             //获取cite属性的值:也就是链接
var quoteChildern = quotes[i].getElementsByTagName("*");      //因为p节点和blockquote节点之间有个换行符,不少浏览器会把它解释为几个文本节点,这样一来,blockquote元素节点的lastChild属性
//检查长度是否小于1 ,如果是,立刻退出本次循环。              //就是一个文本节点不是p元素节点。该条语句是为了获取最后一个元素节点的位置。建议:如果没有百分之百把握,一定要去检查
if(quoteChildern.length < 1) continue;                        //lastChild的nodeType属性,以免获取节点错误。
var elem = quoteChildern[quoteChildern.length - 1];           
var link = document.createElement("a");    //创建a元素
var link_text = document.createTextNode("source");
link.appendChild(link_text);
link.setAttribute("href", url);          //把href属性添加给新链接
//插入链接
var superscript = document.createElement("sup");           //sup元素:指定内含文本要以上标的形式显示,通常比当前字体稍小。
superscript.appendChild(link);                             //以上语句html文本:<sup><a href="http://www.w3.org/DOM/">source</a></sup>
elem.appendChild(superscript);        //追加为变量elem的最后一个子节点

} 
}

addLoadEvent(displayCitations);

浏览器效果:

时间: 2024-10-19 18:55:43

JS DOM:显示文献来源链接表的相关文章

JS DOM编程艺术——显示文献来源链接表—— JS学习笔记2015-7-17(第86天)

function displayCitations(){ // 取得所有引用 var quotes = document.getElementsByTagName("blockquote"); //遍历引用 for( var i=0; i<quotes.length; i++){ // 如果没有cite属性,继续循环 if(!quotes[i].getAttribute("cite")) continue; // 保存cite属性 var url = quot

JS显示文献来源和缩略词

<html><head> <title></title> <style type="text/css"> abbr{ text-decoration:underline; } body{ background-color:#ccc; color:#333; font-size: 20px; } </style></head><body> <h1>what is the Docum

javascripts学习笔记(五):用js来实现缩略语列表、文献来源链接和快捷键列表。

1 缩略语列表问题出发点:一段包含大量缩略语的文本,例如: <p> The <abbr title="World Wide Web Consortium">W3C</abbr> defines the <abbr title="Document Object Model">DOM</abbr> as: </p> <blockquote cite="http://www.w3.or

JS DOM(文档对象模型)与BOM(浏览器对象模型)

在JS中,对DOM(Document Object Model)对象和BOM(Browser Object Model )对象的操作是非常重要的内容.DOM主要包括HTML文档的属性和方法,像对HTML节点的操作,CSS的操作和HTML事件的监听和处理.BOM不要包括浏览器相关的一些属性和方法. DOM知识点1.改变页面的元素和属性a.获取元素的方法:document.getElementById()document.getElementsByTagName()document.getEleme

JS DOM编程艺术的学习—— JS学习笔记2015-7-5(第76天)

由于看高程3卡住了,所以现在在学习JS DOM编程艺术来巩固基础: 一.在看JS DOM 编程艺术的时候,有个作者提到的方法很实用, 就是在JS中变量和函数的命名方法:  变量的命名方法为使用下划线,比如: var temp_color = ['red','blue']; 函数就使用驼峰法,比如: function current_date(){}; 这样的习惯可以帮助理解,提高可读性,在理解变量和函数名的时候就很方便了: 二.还有个收获就是关于“对象”的理解又加深了 之前对于什么对象的属性,对

js DOM 扩展

1. 选择符API querySelector()          返回匹配的第一个元素,接收一个 CSS 选择符.没有找到返回 null. querySelectorAll()      返回所有匹配的一个 NodeList, 这是一个快照不会动态改变.接收一个 CSS 选择符. mathesSelecttor()      如果调用元素与该选择符匹配,返回true, 否则返回 false. 接收一个 CSS 选择符. 2. 与类相关的扩充 getElementsByClassName()

JS DOM编程艺术——JS图片库—— JS学习笔记2015-7-8(第79天)

DOM是一种适用于多种环境和多种程序设计语言的通用型API. 如果想要把本书(JS DOM编程艺术)学到的DOM技巧运用在web浏览器以外的应用环境里,严格遵守“第1级DOM”能够让你避免与兼容性有关的任何问题: tips:setAttribute是第1级DOM; 图片切换初级js: <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/

JS DOM 编程艺术 随笔

DOM 最大的作用就是将整个文档通过节点树来展现.通过类似方法可以获取特定节点,并绑定js方法实现与人的交互. 1.通过dom方法,获取页面的元素(getElementsByTagName/id,通过class(getAttribute))2.获取元素之后,为他们绑定行为(点击/其他)的处理事件3.最后把所有函数绑定到window.onload()函数上面去 onload = function(){function1function2...} plus 小技巧: <a onclick=>函数

js简单显示动态时间点

<input type="text" id="showtime" redayonly="redayonly" /> <script> function nowGetTime(){ var date=new Date(); document.getElementById("showtime").value=date.getFullYear()+"-"+(date.getMonth()+