文件 v2.0.3

Element 擴充

Element.prototype 與 DocumentFragment.prototype 上的鏈式方法:內容、class、屬性、子元素、節點走訪與事件處理。

Element

原始碼:src/prototype/Element.ts

方法/屬性 說明
el.length this.children.length
el.$i 元素在父層子節點中的索引
el.$attributes 所有屬性組成的 { name: value } 物件
el._(value) / el.__(value) 新增/取代子節點——字串與數字轉為文字節點;純物件會格式化為 <br> 分行的 JSON
el._style(map) / el._data(map) / el._attr(map) 鏈式:依物件批次設定 style / dataset / attribute 鍵值
el._class(list) 鏈式:新增一或多個 class(字串以逗號/空白/點分隔,或陣列)
el.class_(list) / el.style_(list) / el.data_(list) / el.attr_(list) 鏈式:移除 class/清除樣式/刪除 dataset 鍵/移除屬性
el.$style(key) / el.$data(key) / el.$attr(key) 讀取單一樣式屬性/dataset 項目/屬性值
el.class__() 鏈式:完全清空 className
el.__class(list) 鏈式:取代整個 class 列表
el.$$class(list) 僅當 list 中每個 class 都存在時為 true
el.$$class_(bool, list) 鏈式:bool 為假時新增 list,為真時移除(省略 bool 時自動偵測目前狀態)
el.$$data(key, value?) / el.$$attr(key, value?) dataset/屬性值等於 value 時為 true;省略 value 時檢查是否非空
el._children(...args) 鏈式:透過 _child 逐一新增每個引數
el._child(value, before) 鏈式:依索引或參照 Element 新增/插入子節點(或子節點陣列)
el.__child(value) 鏈式:取代子節點(replaceChildren)
el.$child(value) 依混合的選擇器字串與數字索引陣列查詢子節點
el.$parent(count) / el.$pre(count) / el.$next(count) 沿 parentElement / previousElementSibling / nextElementSibling 走訪 count 步
el.$sel(selector) / el.$selAll(selector) 有空值保護的 querySelector / querySelectorAll
el._click(fn)(及所有 DOM 事件名,如 _input、_keydown、_touchstart、_drop 等) 鏈式指定 on<event> = fn

DocumentFragment

原始碼:src/prototype/DocumentFragment.ts

方法/屬性 說明
fragment.innerHTML 透過一個未掛載的 <div> 序列化片段內容
fragment.length this.children.length
fragment._children(...args) 逐一新增每個引數作為子節點
fragment._child(value) 新增一個值(或值陣列);字串/數字轉為文字節點
EN