<blockquote cite="http://www.w3c.org/DOM/">
<p>
A platform- and language-neutral interface that will allow programs
and scripts to dynamically access and update the contents,
structure and style of documents.
</p>
</blockquote>
1.编写displayCitation函数
①查找你的元素
②创建链接
③插入链接
④改进脚本
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");
var quoteChildren=quotes[i].getElemntsByTagName(*);
/* 因为</p>与</blockquote>标签之间还存在一个换行符
* 有些浏览器把换行符解释为一个文本节点,这样一来blockquote元素节点的lastChild属性就是文本节
* 点
* 我们可以把包含在blockquote的所有元素节点找出来,blockquote元素包含的最后一个文本节点对应
了数组的最后一个元素
*/
if(quoteChildren.length<1) continue;
/* 如果长度小于1,就用continue退出本次循环 */
var elem=quoteChildren[quoteChildren.length-1];
var link=document.createElement("a");
var link_text=document.createTextNode("source");
link.appendChild(link_text);
link.setAttribute("href",url);
var superscript=document.createElement("sup");
/* 用sup元素来包装它,使它在浏览器里呈现上标的效果 */
superscript.appendChild(link);
elem.appendChild(superscript);
}
}
addLoadEvent(displayCitations);