Teal TealUI

批量操作节点web/domList

快速、链式操作节点。

API
全局
DomList 接口

API

全局

函数 描述
$(...)(selector?:any, context?:Document | Node):DomList(6 重载)

查找 CSS 选择器匹配的所有元素。

参数 类型 描述 默认值
selector* string
context Document | Node

返回值

类型:DomList

返回新列表。


解析指定的 HTML 片段。

参数 类型 描述 默认值
html* string
context Document

返回值

类型:DomList

返回新列表。


创建一个空列表。

返回值

类型:DomList

返回新列表。


创建仅包含指定节点的列表。

参数 类型 描述 默认值
node* Node | Window

返回值

类型:DomList

返回新列表。


创建和已有列表包含相同元素的新列表。

参数 类型 描述 默认值
nodeList* ArrayLike<Node | Window>

返回值

类型:DomList

返回新列表。


设置文档加载完成后的回调。

参数 类型 描述 默认值
ready* () => void
context Document

返回值

类型:DomList

返回一个空列表。

查找 CSS 选择器匹配的所有元素。

DomList 接口

表示一个元素列表。

字段 类型 描述
[index] : HTMLElement

获取或设置指定索引的元素。

参数 类型 描述 默认值
index* number

返回值

类型:HTMLElement

HTMLElement

获取或设置指定索引的元素。

length : number

元素个数。

number

元素个数。

方法 描述
DomList(...)(selector?:any, context?:any):void

表示一个元素列表。

this:DomList

参数 类型 描述 默认值
selector any
context any

返回值

类型:void

表示一个元素列表。

push(...)(...elems:HTMLElement[]):number

向列表末尾添加新元素。

参数 类型 描述 默认值
elems HTMLElement[]

返回值

类型:number

返回新长度。

向列表末尾添加新元素。

pop()():HTMLElement

移除并返回列表末尾的元素。

返回值

类型:HTMLElement

返回元素。

移除并返回列表末尾的元素。

unshift(...)(...elems:HTMLElement[]):number

向列表开头添加新元素。

参数 类型 描述 默认值
elems HTMLElement[]

返回值

类型:number

返回新长度。

向列表开头添加新元素。

shift()():HTMLElement

移除并返回列表开头的元素。

返回值

类型:HTMLElement

返回元素。

移除并返回列表开头的元素。

slice(...)(start?:number, end?:number):DomList

获取列表的指定位置的子列表。

参数 类型 描述 默认值
start number
end number

返回值

类型:DomList

返回新列表。

获取列表的指定位置的子列表。

splice(start, deleteCount, ...)(start:number, deleteCount:number, ...insertItems:HTMLElement[]):HTMLElement[]

移除或插入列表的指定元素。

参数 类型 描述 默认值
start* number
deleteCount* number
insertItems HTMLElement[]

返回值

类型:HTMLElement[]

返回被删除的元素所组成的数组。

移除或插入列表的指定元素。

sort(compareFn)(compareFn:function):this

排序当前列表的元素。

参数 类型 描述 默认值
compareFn* (x: HTMLElement, y: HTMLElement) => number

返回值

类型:this

排序当前列表的元素。

reverse()():this

颠倒所有元素的顺序。

返回值

类型:this

颠倒所有元素的顺序。

indexOf(value, ...)(value:HTMLElement, startIndex?:number):number

查找指定项在数组内的第一个索引。

参数 类型 描述 默认值
value* HTMLElement
startIndex number

返回值

类型:number

返回索引。如果找不到则返回 -1。

查找指定项在数组内的第一个索引。

lastIndexOf(value, ...)(value:HTMLElement, startIndex?:number):number

查找指定项在数组内的最后一个索引。

参数 类型 描述 默认值
value* HTMLElement
startIndex number

返回值

类型:number

返回索引。如果找不到则返回 -1。

查找指定项在数组内的最后一个索引。

each(callback, ...)(callback:function, thisArg?:any):this

对列表的每一项执行一次回调函数。

参数 类型 描述 默认值
callback* (elem: HTMLElement, index: number, target: this) => void
thisArg any

返回值

类型:this

对列表的每一项执行一次回调函数。

map(callback, ...)(callback:function, thisArg?:any):DomList

对列表的每一项执行一次回调函数,然后将每个结果组成新数组。

参数 类型 描述 默认值
callback* (elem: HTMLElement, index: number, target: this) => any
thisArg any

返回值

类型:DomList

对列表的每一项执行一次回调函数,然后将每个结果组成新数组。

filter(callback, ...)(callback:function, thisArg?:any):DomList(2 重载)

筛选数组中符合条件的项并组成一个新数组。

参数 类型 描述 默认值
callback* (elem: HTMLElement, index: number, target: this) => void
thisArg any

返回值

类型:DomList

返回一个新列表。


筛选数组中匹配指定 CSS 选择器的项并组成一个新数组。

参数 类型 描述 默认值
selector* string

返回值

类型:DomList

返回一个新列表。

筛选数组中符合条件的项并组成一个新数组。

every(callback, ...)(callback:function, thisArg?:any):boolean

判断数组的每一项是否都符合条件。

参数 类型 描述 默认值
callback* (elem: HTMLElement, index: number, target: this) => void
thisArg any

返回值

类型:boolean

如果所有项满足条件则返回 true,否则返回 false。

判断数组的每一项是否都符合条件。

some(callback, ...)(callback:function, thisArg?:any):boolean

判断数组中是否存在一项或多项符合条件。

参数 类型 描述 默认值
callback* (elem: HTMLElement, index: number, target: this) => void
thisArg any

返回值

类型:boolean

如果至少存在一项满足条件则返回 true,否则返回 false。

判断数组中是否存在一项或多项符合条件。

add(...)(...items:(string | Node | Window | ArrayLike<Node | Window>)[]):this

向列表末尾添加新元素。

参数 类型 描述 默认值
items (string | Node | Window | ArrayLike<Node | Window>)[]

返回值

类型:this

向列表末尾添加新元素。

find(selector)(selector:string):DomList

在当前节点内查询 CSS 选择器匹配的所有节点。

参数 类型 描述 默认值
selector* string

返回值

类型:DomList

在当前节点内查询 CSS 选择器匹配的所有节点。

match(selector)(selector:string):boolean

判断是否有一个或多个元素匹配指定的 CSS 选择器。

参数 类型 描述 默认值
selector* string

返回值

类型:boolean

返回包含所有元素的新列表。

判断是否有一个或多个元素匹配指定的 CSS 选择器。

next(...)(selector?:string):NodeList

获取每个节点的下一个相邻元素。

参数 类型 描述 默认值
selector string

返回值

类型:NodeList

返回包含所有元素的新列表。

获取每个节点的下一个相邻元素。

prev(...)(selector?:string):NodeList

获取每个节点的上一个相邻元素。

参数 类型 描述 默认值
selector string

返回值

类型:NodeList

返回包含所有元素的新列表。

获取每个节点的上一个相邻元素。

parent(...)(selector?:string):NodeList

获取每个节点的父元素。

参数 类型 描述 默认值
selector string

返回值

类型:NodeList

返回包含所有元素的新列表。

获取每个节点的父元素。

closest(...)(selector?:string):NodeList

从每个节点开始向父元素查找第一个匹配指定 CSS 选择器的元素。

参数 类型 描述 默认值
selector string

返回值

类型:NodeList

返回包含所有元素的新列表。

从每个节点开始向父元素查找第一个匹配指定 CSS 选择器的元素。

children(...)(selector?:string):NodeList

获取每个节点的所有子元素。

参数 类型 描述 默认值
selector string

返回值

类型:NodeList

返回包含所有元素的新列表。

获取每个节点的所有子元素。

append(content)(content:string | Node | ArrayLike<HTMLElement>):this

在每个节点末尾插入一段 HTML 或一个节点。

参数 类型 描述 默认值
content* string | Node | ArrayLike<HTMLElement>

返回值

类型:this

在每个节点末尾插入一段 HTML 或一个节点。

prepend(content)(content:string | Node | ArrayLike<HTMLElement>):this

在每个节点开头插入一段 HTML 或一个节点。

参数 类型 描述 默认值
content* string | Node | ArrayLike<HTMLElement>

返回值

类型:this

在每个节点开头插入一段 HTML 或一个节点。

before(content)(content:string | Node | ArrayLike<HTMLElement>):this

在每个节点前插入一段 HTML 或一个节点。

参数 类型 描述 默认值
content* string | Node | ArrayLike<HTMLElement>

返回值

类型:this

在每个节点前插入一段 HTML 或一个节点。

after(content)(content:string | Node | ArrayLike<HTMLElement>):this

在每个节点后插入一段 HTML 或一个节点。

参数 类型 描述 默认值
content* string | Node | ArrayLike<HTMLElement>

返回值

类型:this

在每个节点后插入一段 HTML 或一个节点。

appendTo(parent)(parent:string | Node | ArrayLike<HTMLElement>):this

将当前节点添加到目标节点的末尾。

参数 类型 描述 默认值
parent* string | Node | ArrayLike<HTMLElement>

返回值

类型:this

将当前节点添加到目标节点的末尾。

remove()():this

从文档中移除列表中所有节点。

返回值

类型:this

从文档中移除列表中所有节点。

clone()():NodeList

复制节点列表。

返回值

类型:NodeList

返回复制的新列表。

复制节点列表。

attr(attributeName)(attributeName:string):string(3 重载)

获取列表中第一个元素的属性值。

参数 类型 描述 默认值
attributeName* string

返回值

类型:string

返回属性值。如果属性不存在则返回 null。


设置列表中每个元素的属性值。

参数 类型 描述 默认值
attributeName* string
value* string | number

返回值

类型:this


设置列表中每个元素的属性值。

参数 类型 描述 默认值
attributes* Object

返回值

类型:this

获取列表中第一个元素的属性值。

val()():string(2 重载)

获取列表中第一个元素的值。

返回值

类型:string

返回属性值。如果属性不存在则返回 null。


设置列表中每个元素的值。

参数 类型 描述 默认值
value* any

返回值

类型:this

获取列表中第一个元素的值。

text()():string(2 重载)

获取列表中第一个元素的文本内容。

返回值

类型:string

返回属性值。如果属性不存在则返回 null。


设置列表中每个元素的文本内容。

参数 类型 描述 默认值
value* any

返回值

类型:this

获取列表中第一个元素的文本内容。

html()():string(2 重载)

获取列表中第一个元素的 HTML 内容。

返回值

类型:string

返回属性值。如果属性不存在则返回 null。


设置列表中每个元素的文本内容。

参数 类型 描述 默认值
value* any

返回值

类型:this

获取列表中第一个元素的 HTML 内容。

hasClass(className)(className:string):boolean

判断是否存在一个元素已添加指定的 CSS 类名。

参数 类型 描述 默认值
className* string

返回值

类型:boolean

如果已添加则返回 true,否则返回 false。

判断是否存在一个元素已添加指定的 CSS 类名。

addClass(className)(className:string):this

添加所有元素的 CSS 类名。

参数 类型 描述 默认值
className* string

返回值

类型:this

添加所有元素的 CSS 类名。

removeClass(...)(className?:string):this

删除所有元素的 CSS 类名。

参数 类型 描述 默认值
className string

返回值

类型:this

删除所有元素的 CSS 类名。

toggleClass(className)(className:string):this

如果存在(不存在)则删除(添加)所有元素的 CSS 类名。

参数 类型 描述 默认值
className* string

返回值

类型:this

如果存在(不存在)则删除(添加)所有元素的 CSS 类名。

css(propName)(propName:string):this(3 重载)

获取列表中第一个元素的 CSS 属性值。

参数 类型 描述 默认值
propName* string

返回值

类型:this

返回计算后的 CSS 属性值。


设置列表中每个元素的 CSS 属性值。

参数 类型 描述 默认值
propName* string
value* string | number

返回值

类型:this


设置列表中每个元素的 CSS 属性值。

参数 类型 描述 默认值
cssProps* Object

返回值

类型:this

获取列表中第一个元素的 CSS 属性值。

scroll()():this(2 重载)

获取列表中第一个元素的滚动距离。

返回值

类型:this

返回坐标。如果元素不可滚动则返回原点。


设置列表中每个元素的滚动距离。

参数 类型 描述 默认值
value* Point

返回值

类型:this

获取列表中第一个元素的滚动距离。

rect()():this(2 重载)

获取列表中第一个元素的区域。

返回值

类型:this

返回元素实际占用区域(含内边距和边框、不含外边距)。如果元素不可见则返回空区域。


设置列表中每个元素的区域。

参数 类型 描述 默认值
value* Rect

返回值

类型:this

获取列表中第一个元素的区域。

on(eventName, selector, handler, ...)(eventName:string, selector:string, handler:function, thisArg?:any):this

绑定每个元素的事件。

参数 类型 描述 默认值
eventName* string
selector* string
handler* (e: Event, target: HTMLElement) => void
thisArg any

返回值

类型:this

示例

on(document.body, "mouseenter", "a", function(e){ this.firstChild.innerHTML = e.pageX; })

绑定每个元素的事件。

off(eventName, selector, handler, ...)(eventName:string, selector:string, handler:function, thisArg?:any):this

解绑每个元素的事件。

参数 类型 描述 默认值
eventName* string
selector* string
handler* (e: Event, target: HTMLElement) => void
thisArg any

返回值

类型:this

示例

off(document.body, "mouseenter", "a", function(e) { this.firstChild.innerHTML = e.pageX; })

解绑每个元素的事件。

trigger(eventName, selector, ...)(eventName:string, selector:string, event?:Partial<Event>):this(2 重载)

触发每个元素的指定事件,即执行对应已添加的所有事件处理函数。

参数 类型 描述 默认值
eventName* string
selector* string
event Partial<Event>

返回值

类型:this

示例

trigger(document.body, "click")

触发每个元素的指定事件,即执行对应已添加的所有事件处理函数。

参数 类型 描述 默认值
eventName* string
selector* string
event Partial<Event>

返回值

类型:this

示例

trigger(document.body, "click")

触发每个元素的指定事件,即执行对应已添加的所有事件处理函数。

animate(propNames, ...)(propNames:object, callback?:function, duration?:number, timingFunction?:string):this

执行一个自定义渐变。

参数 类型 描述 默认值
propNames* { [propName: string]: string | number; }
callback () => void
duration number
timingFunction string

返回值

类型:this

示例

animate(document.body, { height: 400 });

执行一个自定义渐变。

show(...)(animation?:ToggleAnimation, callback?:function, duration?:number, timingFunction?:string, target?:HTMLElement):this

显示元素。

参数 类型 描述 默认值
animation ToggleAnimation
callback (value: boolean) => void
duration number
timingFunction string
target HTMLElement

返回值

类型:this

显示元素。

hide(...)(animation?:ToggleAnimation, callback?:function, duration?:number, timingFunction?:string, target?:HTMLElement):this

隐藏元素。

参数 类型 描述 默认值
animation ToggleAnimation
callback (value: boolean) => void
duration number
timingFunction string
target HTMLElement

返回值

类型:this

隐藏元素。

toggle(...)(animation?:ToggleAnimation, callback?:function, duration?:number, timingFunction?:string, target?:HTMLElement):this(2 重载)

切换显示或隐藏元素。

参数 类型 描述 默认值
animation ToggleAnimation
callback (value: boolean) => void
duration number
timingFunction string
target HTMLElement

返回值

类型:this


切换显示或隐藏元素。

参数 类型 描述 默认值
value* boolean
animation ToggleAnimation
callback (value: boolean) => void
duration number
timingFunction string
target HTMLElement

返回值

类型:this

切换显示或隐藏元素。

click()():this(2 重载)

触发每个元素的点击事件。

返回值

类型:this


绑定每个元素的点击事件。

参数 类型 描述 默认值
handler* (e: MouseEvent, sender: HTMLElement) => void

返回值

类型:this

触发每个元素的点击事件。

focus()():this(2 重载)

触发每个元素的获取焦点事件。

返回值

类型:this


绑定每个元素的获取焦点事件。

参数 类型 描述 默认值
handler* (e: UIEvent, sender: HTMLElement) => void

返回值

类型:this

触发每个元素的获取焦点事件。

blur()():this(2 重载)

触发每个元素的失去焦点事件。

返回值

类型:this


绑定每个元素的失去焦点事件。

参数 类型 描述 默认值
handler* (e: UIEvent, sender: HTMLElement) => void

返回值

类型:this

触发每个元素的失去焦点事件。

submit()():this(2 重载)

触发每个元素的表单提交事件。

返回值

类型:this


绑定每个元素的表单提交事件。

参数 类型 描述 默认值
handler* (e: UIEvent, sender: HTMLElement) => void

返回值

类型:this

触发每个元素的表单提交事件。

select()():this(2 重载)

触发每个元素的选择事件。

返回值

类型:this


绑定每个元素的选择事件。

参数 类型 描述 默认值
handler* (e: UIEvent, sender: HTMLElement) => void

返回值

类型:this

触发每个元素的选择事件。