Js 第11章 DOM擴充套件

2021-09-27 13:03:32 字數 1588 閱讀 8618

類似jquery

以下都只針對於element node

childelementcount: 返回子元素(不包含文字節點和注釋)的個數

firstelementchild: 指向第乙個元素;firstchild的元素版

lastelementchild: 指向以後乙個元素;lastchild的元素版

previouselementsibling: 指向前乙個同輩元素

nextelementsibling: 指向後乙個同輩元素

getelementsbyclassname(): 返回帶有指定類的所有元素的nodelist。只有位於呼叫元素子樹的元素才會返回。

某個元素擁有的所有類。

classlist屬性是新集合型別domtokenlist的例項。可以使用length獲取長度,也可以用方括號獲取每個元素

方法:

有了classlist,修改元素的類時,則不需要像以前一樣獲取class的值,再進行字串切分連線操作。直接add,remove即可,十分方便。

元素獲得焦點的方式有頁面載入,使用者輸入,**中呼叫focus()方法

屬性:document.activeelement: 獲得焦點的元素的引用。

方法:document.hasfocus():確定文件是否獲得了焦點。屬性

compatmode

可以為元素新增非標準屬性,但要加字首data-,目的是為元素提供與渲染無關的資訊,或者提供語義資訊

新增了自定義屬性後,可以通過元素的dataset屬性來訪問自定義屬性的值。dataset中儲存的屬性名將沒有data字首

mydiv.

setattribute

("data-hbx1"

,"i am 1"

)mydiv.

setattribute

("data-hbx2"

,"i am 2"

)mydiv.dataset

//domstringmap

// hbx1: "i am 1"

// hbx2: "i am 2"

outerhtml:

優點:新增子元素時十分方便,只需要將以html字串的形式傳入innerhtml即可。假如使用dom操作插入,則需要進行節點建立並按順序連線。

但是建立和銷毀html解析器將造成效能損失,因此需要避免多次設定innerhtml。

等同於childnodes屬性

判斷某個節點是不是另乙個節點的後代。

呼叫者和引數均為nodes型別。

讀:與innerhtml類似,不過過濾去了所有的標籤,按由淺入深的順序拼接所有子文件樹。

寫:刪除所有子節點,插入文字節點

div.innertext = div.innertext;

//使用文字內容替換容器元素中的所有內容(包括子節點)

outertext用文字節點替換整個元素

JS 十一章 DOM擴充套件

1.queryselector 方法接收乙個css選擇符,返回符合的第乙個元素,沒有則返回null 2.queryselectorall 返回乙個nodelist集合 3.getelementsbyclassname 返回nodelist,接收類名 說明 使用這些屬性,不必擔心空文字節點 空的也存在...

第11章 執行緒

執行緒標識 就像每個程序有乙個程序id一樣,每個執行緒也有乙個執行緒id。程序id在整個系統中是唯一的,但執行緒id不同,執行緒id只有在它所屬的程序上下文中才有意義。程序id 用pid t資料型別表示 執行緒id用pthread t資料型別來表示 includeint pthread equal ...

第11章 執行緒

1.執行緒的作用 1 對於程式設計而言 當我們的乙個程序在某一時刻,需要做的事件不止一件的時候,一般有兩種方法。一種是採用非同步程式設計的模式,一種是採用多執行緒同步模式。但是多執行緒同步模式遠遠比非同步模式要方便的多。但是對於單核系統,往往非同步程式設計模式效率更高。2 對於互動程式,一般都是要多...