新人筆記17

2021-10-09 13:08:56 字數 2321 閱讀 4010

在這個案例中,如果單擊文字,先提示「段落被單擊」,然後再提示「div被單擊了」,因為div是p的父容器,所有單擊段落也就相當於單擊了div,所有兩者都會觸發這個事件

但是如何去規定兩個事件的處理順序?這就是事件的冒泡與捕獲。

冒泡:按照從內到外的順序依次觸發,是預設方式

捕獲:與上相反

當使用mouseenter事件時,當里層的div觸發進入事件時,處理完了就沒了(阻斷冒泡)

而使用mouseover事件時,當里層的div觸發進入事件時,處理完後還會冒泡給父容器處理再次進入事件

程式設計師也可以根據需要自己去阻斷冒泡,用stopproagation。

dom(document object model):文件物件模型

通過開發者工具可以看到

整個文件是由一系列的節點物件組成的一棵樹

節點(node)包括元素節點(1)、屬性節點(2)、和文字節點(3)

th1代表乙個元素節點(nodetype=1),nodename是標籤名(th)元素節點的

getattributenode方法是獲取元素的屬性節點,此時輸出的節點型別是屬性節點(2)

節點名稱就是屬性名,節點值就是屬性值

txt1是乙個文字節點(3),節點名稱固定是#text,節點值文字內容

(1)getelementbyid

根據元素的id屬性來獲取元素,獲取到的是乙個元素

(2)getelementsbytagname

根據標籤名來獲取元素,獲取到的是乙個元素集合

(3)getelementsbyclassname

根據class屬性來獲取元素,獲取到的是乙個元素集合

(4)getelementsbyname

根據name屬性來獲取元素,獲取到的是乙個元素集合

總結:獲取元素可以根據標籤名獲取,也可以根據id、name、class屬性來獲取。

根據id屬性獲取的結果是乙個元素,其他的是乙個元素集合

(1)修改內容

通過innertext屬性可讀取或者設定標籤的內部文字

也可以通過innerhtml屬性獲取或者設定內部文字

兩者 的區別:innerhtml會按照html的規則來解析文字,而innertext只是當則普通的文字內容。

如果非要用innertext來換行,使用文字換行符\n

(2)修改樣式

a . *** . style . yyy

b . *** . classname=」…………」(相當是修改了class屬性)

動態刪除

這種方法是分別找到父節點和要刪除的節點,然後執行刪除操作。這種方法有乙個前提

需要知道父節點是誰

那麼如果說不知道父節點是誰,該怎麼刪除呢?

動態新增和動態刪除的案例

案例:刪除動態新增的奇數段落

思路1:獲取div1下的所有段落,然後遍歷,將序號為奇數的段落刪除

這種方法在最開始的時候是可以的,但是隨著動態新增或者刪除的執行,後面的結果就不對了,因為動態刪除影響了原來的順序,程式是按照序號去判斷奇偶性,所以會出現誤判

思路2:在動態新增的時候給序號為奇數的設定乙個class屬性,然後通過getelementsbyclassname來獲取奇數行

mysql1 7 MySQL學習筆記1 7

一 了解資料庫和表 show databases 返回可用資料庫的乙個列表 show tables 返回當前選擇的資料庫內可用的列表 show columns from 表名 對每個字段返回一行,行中包括欄位名 資料型別 是否允許null 鍵資訊 預設值以及其他資訊 二 檢索資料 檢索單個列 sel...

C 筆記17 事務

c 筆記17 事務 本章概要 1 事務概述 2 隱式事務 3 顯示事務 1 事務概述 當您從網上書店購買書籍時,會用錢 以信貸方式 來交換書籍。如果您的信用良好,則一系列相關操作可確保您和書店可以相應地獲得書籍和錢。但如果在交換期間該系列操作中的單個操作發生故障,則整個交換就會失敗。結果,您就得不到...

linux學習筆記17

vim vim介紹 vim是vi的公升級版,vim和vi的最大區別就是編輯乙個文字時vi不會顯示顏色,vim會顯示顏色,vim的安裝方法yum install y vim enhanced。vim顏色顯示 vim的顏色和你檔案的具體內容有關,相同的檔案在不同的目錄下都有可能導致顏色不存在,vim的配...