亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

比較詳細(xì)的javascript DOM 學(xué)習(xí)筆記第2/2頁

 更新時(shí)間:2008年06月21日 22:53:58   作者:  
看了很多的js dom學(xué)習(xí)資料,發(fā)現(xiàn)這個(gè)比較詳細(xì),特轉(zhuǎn)載給大家學(xué)習(xí)一下

5.創(chuàng)建新節(jié)點(diǎn)
最常用到的幾個(gè)方法是
createDocumentFragment()--創(chuàng)建文檔碎片節(jié)點(diǎn)
createElement(tagname)--創(chuàng)建標(biāo)簽名為tagname的元素
createTextNode(text)--創(chuàng)建包含文本text的文本節(jié)點(diǎn)

createElement()、createTextNode()、appendChild()
 

<html>
    
<head>
        
<title>createElement() Example</title>
        
<script type="text/javascript">
            
function createMessage() {
                
var oP = document.createElement("p");
                
var oText = document.createTextNode("Hello World!");
                oP.appendChild(oText);
                document.body.appendChild(oP);
            }
        
</script>
    
</head>
    
<body onload="createMessage()">
    
</body>
</html>


removeChild()、replaceChild()、insertBefore()
刪除節(jié)點(diǎn)
 

<html>
    
<head>
        
<title>removeChild() Example</title>
        
<script type="text/javascript">
            
function removeMessage() {
                
var oP = document.body.getElementsByTagName("p")[0];
                oP.parentNode.removeChild(oP);
            }
        
</script>
    
</head>
    
<body onload="removeMessage()">
        
<p>Hello World!</p>
    
</body>
</html>

替換
 

<html>
    
<head>
        
<title>replaceChild() Example</title>
        
<script type="text/javascript">
            
function replaceMessage() {
                
var oNewP = document.createElement("p");
                
var oText = document.createTextNode("Hello Universe!");
                oNewP.appendChild(oText);
                
var oOldP = document.body.getElementsByTagName("p")[0];
                oOldP.parentNode.replaceChild(oNewP, oOldP);
            }
        
</script>
    
</head>
    
<body onload="replaceMessage()">
        
<p>Hello World!</p>
    
</body>
</html>

新消息添加到舊消息之前
 

<html>
    
<head>
        
<title>insertBefore() Example</title>
        
<script type="text/javascript">
            
function insertMessage() {
                
var oNewP = document.createElement("p");
                
var oText = document.createTextNode("Hello Universe!");
                oNewP.appendChild(oText);
                
var oOldP = document.getElementsByTagName("p")[0];
                document.body.insertBefore(oNewP, oOldP);
            }
        
</script>
    
</head>
    
<body onload="insertMessage()">
        
<p>Hello World!</p>
    
</body>
</html>


createDocumentFragment()
一旦把節(jié)點(diǎn)添加到document.body(或者它的后代節(jié)點(diǎn))中,頁面就會更新并反映出這個(gè)變化。對于少量的更新,這是很好的,然而,當(dāng)要向document添加大量數(shù)據(jù)時(shí),如果逐個(gè)添加這些變動,這個(gè)過程有可能會十分緩慢。為解決這個(gè)問題,可以創(chuàng)建一個(gè)文檔碎片,把所有的新節(jié)點(diǎn)附加其上,然后把文檔碎片的內(nèi)容一次性添加到document中,假如想創(chuàng)建十個(gè)新段落。
 

<html>
    
<head>
        
<title>insertBefore() Example</title>
        
<script type="text/javascript">
            
function addMessages() {
                
var arrText = ["first""second""third""fourth""fifth""sixth""seventh""eighth""ninth""tenth"];

                
var oFragment = document.createDocumentFragment();

                
for (var i=0; i < arrText.length; i++) {
                    
var oP = document.createElement("p");
                    
var oText = document.createTextNode(arrText[i]);
                    oP.appendChild(oText);
                    oFragment.appendChild(oP);
                }

                document.body.appendChild(oFragment);

            }
        
</script>
    
</head>
    
<body onload="addMessages()">

    
</body>
</html>


6.讓特性像屬性一樣
大部分情況下,HTML DOM元素中包含的所有特性都是可作為屬性。
假設(shè)有如下圖像元素:
<img src = "mypicture.jpg" border=0 />
如果要使用核心的DOM來獲取和設(shè)置src和border特性,那么要用getAttribute()和setAttribute()方法:
alert(oImg.getAttribute("src"));
alert(oImg.getAttribute("border"));
oImg.setAttribute("src","mypicture2.jpg");
oImg.setAttribute("border",1);
然而,使用HTML DOM,可以使用同樣名稱的屬性來獲取和設(shè)置這些值:
alert(oImg.src);
alert(oImg.border);
oImg.src="mypicture2.jpg";
oImg.border ="1";
唯一的特性名和屬性名不一樣的特例是class屬性,它是用來指定應(yīng)用于某個(gè)元素的一個(gè)CSS類,因?yàn)閏lass在ECMAScript中是一個(gè)保留字,在javascript中,它不能被作為變量名、屬性名或都函數(shù)名。于是,相應(yīng)的屬性名就變成了className;
注:IE在setAttribute()上有很大的問題,最好盡可能使用屬性。

7.table方法
為了協(xié)助建立表格,HTML DOM給<table/>,<tbody/>和<tr/>等元素添加了一些特性和方法。
給<table/>元素添加了以下內(nèi)容:

特性/方法 說明
caption 指向<caption/>元素并將其放入表格
tBodies <tbody/>元素的集合
tFoot 指向<tfoot/>元素(如果存在)
tHead 指向<thead/>元素(如果存在)
rows 表格中所有行的集合
createTHead() 創(chuàng)建<thead/>元素并將其放入表格
createTFood() 創(chuàng)建<tfoot/>元素并將其放入表格
createCpation() 創(chuàng)建<caption/>元素并將其放入表格
deleteTHead() 刪除<thead/>元素
deleteTFood() 刪除<tfoot/>元素
deleteCaption() 刪除<caption/>元素
deleteRow(position) 刪除指定位置上的行
insertRow(position) 在rows集合中的指定位置上插入一個(gè)新行

<tbody/>元素添加了以下內(nèi)容
特性/方法 說明
rows <tbody/>中所有行的集合
deleteRow(position) 刪除指定位置上的行
insertRow(position) 在rows集合中的指定位置上插入一個(gè)新行

<tr/>元素添加了以下內(nèi)容
特性/方法 說明
cells <tr/>元素中所有的單元格的集合
deleteCell(postion) 刪除給定位置上的單元格
insertCell(postion) 在cells集合的給點(diǎn)位置上插入一個(gè)新的單元格

8.遍歷DOM
NodeIterator,TreeWalker
DOM Level2的功能,這些功能只有在Mozilla和Konqueror/Safari中才有,這里就不介紹了。

相關(guān)文章

  • js 可選鏈操作符的使用

    js 可選鏈操作符的使用

    可選鏈操作符(?.)允許讀取位于鏈接對象鏈身處的屬性的值,本文就詳細(xì)的介紹一下,感興趣的小伙伴們可以參考一下
    2021-06-06
  • uniapp 仿微信的右邊下拉選擇彈出框的實(shí)現(xiàn)代碼

    uniapp 仿微信的右邊下拉選擇彈出框的實(shí)現(xiàn)代碼

    這篇文章主要介紹了uniapp 仿微信的右邊下拉選擇彈出框的實(shí)現(xiàn)代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 關(guān)于微信公眾號開發(fā)無法支付的問題解決

    關(guān)于微信公眾號開發(fā)無法支付的問題解決

    這篇文章主要介紹了關(guān)于微信公眾號開發(fā)無法支付的問題解決,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-12-12
  • 全面解析Bootstrap排版使用方法(標(biāo)題)

    全面解析Bootstrap排版使用方法(標(biāo)題)

    這篇文章全面解析了Bootstrap排版使用方法,本文重點(diǎn)介紹Bootstrap標(biāo)題排版,感興趣的小伙伴們可以參考一下
    2015-11-11
  • JS簡單實(shí)現(xiàn)動畫彈出層效果

    JS簡單實(shí)現(xiàn)動畫彈出層效果

    本文給大家介紹的是是一款javascript彈出層特效,支持點(diǎn)擊觸發(fā)js彈出層,滑過觸發(fā)js彈出層,帶動畫效果js彈出層,可自定義函數(shù)回調(diào)js彈出層。
    2015-05-05
  • javascript 導(dǎo)出數(shù)據(jù)到Excel(處理table中的元素)

    javascript 導(dǎo)出數(shù)據(jù)到Excel(處理table中的元素)

    最近做的項(xiàng)目中有個(gè)要求,需要將數(shù)據(jù)導(dǎo)出到Excel中,關(guān)于這個(gè)就不是什么問題,網(wǎng)上的資料很多??僧?dāng)Table中有Input(text)之類的元素是怎么辦?
    2009-12-12
  • 原生JS無縫滑動輪播圖

    原生JS無縫滑動輪播圖

    這篇文章主要為大家詳細(xì)介紹了原生JS實(shí)現(xiàn)淡出淡入輪播圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • js構(gòu)造函數(shù)constructor和原型prototype原理與用法實(shí)例分析

    js構(gòu)造函數(shù)constructor和原型prototype原理與用法實(shí)例分析

    這篇文章主要介紹了js構(gòu)造函數(shù)constructor和原型prototype原理與用法,結(jié)合實(shí)例形式分析js構(gòu)造函數(shù)constructor和原型prototype基本原理、功能、使用方法及操作注意事項(xiàng),需要的朋友可以參考下
    2020-03-03
  • javascript在事件監(jiān)聽方面的兼容性小結(jié)

    javascript在事件監(jiān)聽方面的兼容性小結(jié)

    javascript 在事件監(jiān)聽方面的兼容性總結(jié),注意是由于多個(gè)瀏覽器的不一致,導(dǎo)致大家在js書寫時(shí)需要考慮多個(gè)瀏覽器的兼容性。
    2010-04-04
  • JavaScript如何把兩個(gè)數(shù)組對象合并過程解析

    JavaScript如何把兩個(gè)數(shù)組對象合并過程解析

    這篇文章主要介紹了JavaScript如何把兩個(gè)數(shù)組對象合并過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10

最新評論