成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專(zhuān)欄INFORMATION COLUMN

Javascript DOM2

e10101 / 1609人閱讀

摘要:內(nèi)部樣式及外部樣式的獲取及修改內(nèi)部樣式或外部樣式不能通過(guò)屬性獲取樣式瀏覽器非標(biāo)簽節(jié)點(diǎn),偽元素樣式名只讀屬性標(biāo)簽節(jié)點(diǎn),偽元素樣式名兼容寫(xiě)法偽元素偽元素只能應(yīng)用于塊級(jí)元素首個(gè)字符樣式首行樣式在元素后面添加新的內(nèi)容樣式在元素前面添加新的內(nèi)容樣

1. 內(nèi)部樣式及外部樣式的獲取及修改
內(nèi)部樣式或外部樣式不能通過(guò)style屬性獲取樣式
IE瀏覽器:var width = div1.currentStyle.width;
非IE:window.getComputedStyle(標(biāo)簽節(jié)點(diǎn),偽元素).樣式名
只讀屬性?。。?br>window.getComputedStyle(標(biāo)簽節(jié)點(diǎn),偽元素)["樣式名"]
var height = window.getComputedStyle(div1, null).height;
// 兼容寫(xiě)法
if(div1.currentStyle){
    var width = div1.currentStyle.width;
    console.log(width);
}else{
    var height = window.getComputedStyle(div1, null).height;
    console.log(height);
}

偽元素: 偽元素只能應(yīng)用于塊級(jí)元素
:first-letter: 首個(gè)字符
樣式: color background border float margin padding
:first-line: 首行
樣式: color background border float margin padding
:after :在元素后面添加新的內(nèi)容
樣式: content
:before :在元素前面添加新的內(nèi)容
樣式: content



var p1 = document.getElementById("p1");
var text1 = window.getComputedStyle(p1, "after").content;
console.log(text1);    //"where are you from"

2. 小練習(xí):div的移動(dòng)



    
    div
    


    
3. 節(jié)點(diǎn)常用屬性

注:文檔節(jié)點(diǎn) #document 9 null

4. 父子節(jié)點(diǎn)的關(guān)系
var div1 = document.getElementById("div1"); 
// 1、獲取當(dāng)前節(jié)點(diǎn)下的所有子節(jié)點(diǎn)
var childNodeArr = div1.childNodes;
// [text, div#div2, text, div#div3, text, div#div4, text]
console.log(childNodeArr);
// 2、獲取當(dāng)前節(jié)點(diǎn)下的第一個(gè)子節(jié)點(diǎn)
var firstNode = div1.firstChild;
console.log(firstNode);   // "div1    "
console.log(typeof firstNode);  // object

// 文本節(jié)點(diǎn)屬性
console.log(firstNode.nodeName);  //#text
console.log(firstNode.nodeType);  //3
console.log(firstNode.nodeValue);  // "div1    "
 
 
 // 3、獲取當(dāng)前節(jié)點(diǎn)下的最后一個(gè)子節(jié)點(diǎn)
 var lastNode = div1.lastChild;
 
 // 4、獲取當(dāng)前節(jié)點(diǎn)的父節(jié)點(diǎn)
 var parentNode = div1.parentNode;
 console.log(parentNode);  // body
 
 // 5、獲取根節(jié)點(diǎn)
 var doc = div1.ownerDocument;
 console.log(doc);
 
 // 6、獲取兄弟節(jié)點(diǎn)
 var div4 = document.getElementById("div4");
 // 6.1、獲取當(dāng)前節(jié)點(diǎn)的上一同級(jí)節(jié)點(diǎn)
 var pre1 = div4.previousSibling;

 // 6.2、獲取當(dāng)前節(jié)點(diǎn)的上一個(gè)同級(jí)元素節(jié)點(diǎn)
 var pre2 = div4.previousElementSibling;

 // 6.3、獲取當(dāng)前節(jié)點(diǎn)的下一同級(jí)節(jié)點(diǎn)
 var ne1 = div4.nextSibling;

 // 6.4、獲取當(dāng)前節(jié)點(diǎn)的下一個(gè)同級(jí)元素節(jié)點(diǎn)
 var ne2 = div4.nextElementSibling;

 // 7、獲取當(dāng)前節(jié)點(diǎn)下所有屬性節(jié)點(diǎn)
 var attArr = div4.attributes;
 console.log(attArr);
 console.log(attArr[0].nodeName);   //獲取屬性的名字  id
 console.log(attArr[0].nodeValue);   //獲取屬性的值  div4
 console.log(attArr[0].nodeType);   // 2 屬性節(jié)點(diǎn)
 
 // 元素(標(biāo)簽)可以認(rèn)為是節(jié)點(diǎn), 節(jié)點(diǎn)不一定是元素
5.練習(xí):小球碰撞問(wèn)題

兩球問(wèn)題

6. 動(dòng)態(tài)操作節(jié)點(diǎn)
方法 說(shuō)明
createElement(tagName) 創(chuàng)建元素節(jié)點(diǎn)
父節(jié)點(diǎn).appendChild(新元素節(jié)點(diǎn)) 將元素節(jié)點(diǎn)添加到父節(jié)點(diǎn)上
insertBefore(新的元素節(jié)點(diǎn),參照物節(jié)點(diǎn)) 將元素添加到節(jié)點(diǎn)之前
div2.id = "div2" 動(dòng)態(tài)添加屬性
createTextNode (Text) 創(chuàng)建文本節(jié)點(diǎn)
cloneNode() 只復(fù)制當(dāng)前節(jié)點(diǎn)
cloneNode(true) 復(fù)制當(dāng)前節(jié)點(diǎn)及其子節(jié)點(diǎn) 默認(rèn)false
replaceChild(新的節(jié)點(diǎn),舊的節(jié)點(diǎn)) 替換節(jié)點(diǎn)
removeChild(Element) 刪除元素
// 1、創(chuàng)建元素節(jié)點(diǎn)
var div1 = document.createElement("div");
// 設(shè)置innerHTML
div1.innerHTML = "我才來(lái)了";

//1.1、將元素節(jié)點(diǎn)添加到父節(jié)點(diǎn)上
// 父節(jié)點(diǎn).appendChild(新元素節(jié)點(diǎn))
// document.body 獲取body節(jié)點(diǎn)
document.body.appendChild(div1);

// 1.2、將元素添加到節(jié)點(diǎn)之前
// 將新的標(biāo)簽節(jié)點(diǎn)放到參照物之前
var div2 = document.createElement("div");
div2.innerHTML = "明天注意防曬";
var h = document.getElementById("h2");
document.body.insertBefore(div2, h);

// 2、動(dòng)態(tài)添加屬性
// 例子:添加id屬性
div2.id = "div2";

// 3、創(chuàng)建文本節(jié)點(diǎn)
// 一個(gè)對(duì)象只能放到一個(gè)位置上
var text1 = document.createTextNode("還不來(lái)");
var d = document.getElementById("div1");
// d.appendChild(text1);
// 添加到父節(jié)點(diǎn)上
document.body.appendChild(text1);

// 4、復(fù)制節(jié)點(diǎn)
// 4.1 cloneNode()
var div3 = document.getElementById("div3");
var divC1 = div3.cloneNode();
console.log(divC1);

// 4.2 cloneNode(true) 復(fù)制當(dāng)前節(jié)點(diǎn)及其子節(jié)點(diǎn) 默認(rèn)false
var divC2 = div3.cloneNode(true);
console.log(divC1);

// 5、替換節(jié)點(diǎn)
// replaceChild(新的節(jié)點(diǎn),舊的節(jié)點(diǎn))
var h1 = document.getElementById("h1");
var div5 = document.createElement("div");
div5.innerHTML = "看完就走了"
document.body.replaceChild(div5,h1)

// 6、 刪除元素
document.body.removeChild(div5);

Javascript DOM3

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/95085.html

相關(guān)文章

  • #javascript# DOM2

    摘要:當(dāng)元素的某一個(gè)行為被觸發(fā),瀏覽器會(huì)把當(dāng)前存放在事件池中的所有方法,依次按照存放的先后順序執(zhí)行。瀏覽器會(huì)把一些常用的事件掛載到元素對(duì)象的私有屬性上。 DOM2事件綁定的原理1.DOM2事件綁定使用的addEventListener/attachEvent都是在EventTarget這個(gè)內(nèi)置類(lèi)的原型上定義的,我們使用的時(shí)候,會(huì)通過(guò)原型鏈找個(gè)這個(gè)方法,然后執(zhí)行綁定的事件。2.瀏覽器會(huì)給當(dāng)前元...

    BLUE 評(píng)論0 收藏0
  • JavaScript DOM2和DOM3——“DOM的變化”的注意要點(diǎn)

    摘要:和級(jí)分為許多模塊,分別描述了的某個(gè)非常具體的子集。這些模塊主要有核心視圖事件樣式遍歷和范圍以及。另外還有方法和方法框架的變化框架和內(nèi)嵌框架分別用和表示,它們?cè)诩?jí)中都有一個(gè)新屬性這個(gè)屬性包含一個(gè)指針,指向表示框架內(nèi)容的文檔對(duì)象。 DOM2和DOM3級(jí)分為許多模塊,分別描述了DOM的某個(gè)非常具體的子集。這些模塊主要有核心(Core)、視圖(Views)、事件(Events)、樣式(Styl...

    騫諱護(hù) 評(píng)論0 收藏0
  • JavaScript 簡(jiǎn)介

    摘要:簡(jiǎn)介原文鏈接簡(jiǎn)稱(chēng)是一種輕量級(jí),解釋型的編程語(yǔ)言,其函數(shù)是一等公民。標(biāo)準(zhǔn)的目標(biāo)是讓任何一種程序設(shè)計(jì)語(yǔ)言能操控使用任何一種標(biāo)記語(yǔ)言編寫(xiě)出的任何一份文檔。核心規(guī)定了如何映射基于的文檔結(jié)構(gòu),以便簡(jiǎn)化對(duì)文檔的任意部分的訪(fǎng)問(wèn)和操作。 JavaScript 簡(jiǎn)介 原文鏈接 JavaScript ( 簡(jiǎn)稱(chēng):JS ) 是一種 輕量級(jí),解釋型 的編程語(yǔ)言,其函數(shù)是一等公民。眾所周知,它是用于網(wǎng)頁(yè)開(kāi)發(fā)的腳...

    URLOS 評(píng)論0 收藏0
  • # Javascript # DOM2兼容處理

    摘要:兼容問(wèn)題,除了語(yǔ)法上的區(qū)別,在處理的機(jī)制上也有下列問(wèn)題順序問(wèn)題,重復(fù)問(wèn)題,對(duì)象問(wèn)題。沒(méi)有進(jìn)行去重處理。在標(biāo)準(zhǔn)瀏覽器中在低版本中究其根本,都是低版本瀏覽器對(duì)于它內(nèi)置事件池處理機(jī)制的不完善導(dǎo)致的。 DOM2兼容問(wèn)題,除了語(yǔ)法上的區(qū)別,在處理的機(jī)制上也有下列問(wèn)題:順序問(wèn)題,重復(fù)問(wèn)題,this對(duì)象問(wèn)題。 語(yǔ)法問(wèn)題 [標(biāo)準(zhǔn)]curEle.addEventListener(type, fn, fa...

    fnngj 評(píng)論0 收藏0
  • 讀書(shū)筆記(05) - 事件 - JavaScript高級(jí)程序設(shè)計(jì)

    摘要:而事件分為個(gè)級(jí)別級(jí)事件處理程序,級(jí)事件處理程序和級(jí)事件處理程序。級(jí)中沒(méi)有規(guī)范事件的相關(guān)內(nèi)容,所以沒(méi)有級(jí)事件處理。 showImg(https://segmentfault.com/img/bVburYR?w=499&h=400); HTML依托于JavaScript來(lái)實(shí)現(xiàn)用戶(hù)與WEB網(wǎng)頁(yè)之間的動(dòng)態(tài)交互,接收用戶(hù)操作并做出相應(yīng)的反饋,而事件在此間則充當(dāng)橋梁的重要角色。 日常開(kāi)發(fā)中,經(jīng)常會(huì)...

    tinylcy 評(píng)論0 收藏0
  • JavaScript高級(jí)程序設(shè)計(jì)》學(xué)習(xí)筆記:JavaScript中的事件流和事件處理程序

    摘要:可以使用偵聽(tīng)器或處理程序來(lái)預(yù)訂事件,以便事件發(fā)生時(shí)執(zhí)行相應(yīng)的代碼。響應(yīng)某個(gè)事件的函數(shù)稱(chēng)為事件處理程序或事件偵聽(tīng)器??梢詣h除通過(guò)級(jí)方法指定的事件處理程序。 JavaScript和HTML之間的交互是通過(guò)事件實(shí)現(xiàn)的。 事件:文檔或?yàn)g覽器窗口中發(fā)生的一些特定的交互瞬間。 可以使用偵聽(tīng)器(或處理程序來(lái)預(yù)訂事件),以便事件發(fā)生時(shí)執(zhí)行相應(yīng)的代碼。 1. 事件流 事件流:從頁(yè)面中接收事件的順序。 ...

    Rocko 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<