Javascript DOM

本文解释了文档对象模型(DOM),这是一个用于导航HTML和XML文档的应用程序接口(API)。DOM从1995年电子商务开始发展,随着互联网广告的兴起而逐渐形成。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Explaining</title>
</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="http://www.w3.org/DOM">
    <p>
        a plat what is meaning.For our purposes we will say e-commerce begins in 1995,
        following the appearance of the first banner advertisements placed by ATT,
        Volvo, Sprint and others on Hotwired.com in late October 1994,
        and the first sales of banner ad space by Netscape and Infoseek in early 1995.
    </p>
</blockquote>
<p>
    It is an <abbr title="Application Interface Programming">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 src="../scripts/addLoadEvent.js"></script>
<script src="../scripts/displayAbbreviations.js"></script>
<script src="../scripts/displayCitations.js"></script>
</body>

</html>

--------------addLoadEvent.js-------------------------------------

function addLoadEvent(func){
    var oldonload=window.onload;
    if(typeof window.onload !='function'){
        window.onload=func;
    }else{
        window.onload=function(){
            oldonload();
            func();
        }
    }
}

--------------------displayAbbreviations.js-------------------------

function displayAbbreviations(){
    //检查兼容性;
    if (!document.getElementsByTagName || !document.createElement ||
        !document.createTextNode) {
        return false;
    }
    //取得缩略词;
    var abbreviations=document.getElementsByTagName("abbr");
    if(abbreviations.length<1){
        return false;
    }
    //遍历缩略词;
    var defs=new Array();
    for(var i=0;i<abbreviations.length;i++){


        var current_abbr=abbreviations[i];
        //排除IE地雷;
        if(current_abbr.length<1) continue;

        var definiton=current_abbr.getAttribute("title");
        var key=current_abbr.lastChild.nodeValue;
        defs[key]=definiton;

    }
//创建定义列表;
    var dlist=document.createElement("dl");
    for(key in defs){
        var definition=defs[key];
        //创建定义标题;
        var dtitle=document.createElement("dt");
        var dtitle_text=document.createTextNode(key);
        dtitle.appendChild(dtitle_text);
        var ddesc=document.createElement("dd");
        var ddesc_text=document.createTextNode(definition);
        ddesc.appendChild(ddesc_text);
        dlist.appendChild(dtitle);
        dlist.appendChild(ddesc);
    }
//ie地雷;
    if(dlist.childNodes.length<1) return false;

    var header=document.createElement("h2");
    var header_text=document.createTextNode("Abbreviations");
    header.appendChild(header_text);
    document.body.appendChild(header);
    document.body.appendChild(dlist);



}
//函数在加载后被调用;
//window.onload=displayAbbreviations;

addLoadEvent(displayAbbreviations);

---------------------displayCitations.js----------------------------

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].getElementsByTagName("*");
        if(quoteChildren.length<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");
        superscript.appendChild(link);
        elem.appendChild(superscript);
    }
}
addLoadEvent(displayCitations);
-------------------------------------------------------------------


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值