@whitesev/domutils 1.3.4 → 1.3.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.amd.js +466 -98
- package/dist/index.amd.js.map +1 -1
- package/dist/index.cjs.js +466 -98
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +466 -98
- package/dist/index.esm.js.map +1 -1
- package/dist/index.iife.js +466 -98
- package/dist/index.iife.js.map +1 -1
- package/dist/index.system.js +466 -98
- package/dist/index.system.js.map +1 -1
- package/dist/index.umd.js +466 -98
- package/dist/index.umd.js.map +1 -1
- package/dist/types/src/DOMUtils.d.ts +60 -39
- package/dist/types/src/DOMUtilsEvent.d.ts +52 -13
- package/dist/types/src/types/global.d.ts +6 -0
- package/package.json +1 -1
- package/src/DOMUtils.ts +459 -166
- package/src/DOMUtilsEvent.ts +197 -42
- package/src/types/global.d.ts +6 -0
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { type DOMUtilsCreateElementAttributesMap, DOMUtilsEvent } from "./DOMUtilsEvent";
|
|
2
|
-
import { ParseHTMLReturnType } from "./types/global";
|
|
2
|
+
import { ParseHTMLReturnType, type DOMUtilsTargetElementType } from "./types/global";
|
|
3
3
|
import { type UtilsWindowApiOption } from "./WindowApi";
|
|
4
|
+
/**
|
|
5
|
+
* 判断是否是元素列表
|
|
6
|
+
* @param $ele
|
|
7
|
+
*/
|
|
8
|
+
export declare const isNodeList: ($ele: any) => $ele is any[] | NodeList;
|
|
4
9
|
declare class DOMUtils extends DOMUtilsEvent {
|
|
5
10
|
constructor(option?: UtilsWindowApiOption);
|
|
6
11
|
/** 版本号 */
|
|
@@ -15,7 +20,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
15
20
|
* DOMUtils.attr("a.xx","href");
|
|
16
21
|
* > https://xxxx....
|
|
17
22
|
*/
|
|
18
|
-
attr(element:
|
|
23
|
+
attr(element: DOMUtilsTargetElementType, attrName: string): string;
|
|
19
24
|
/**
|
|
20
25
|
* 设置元素的属性值
|
|
21
26
|
* @param element 目标元素
|
|
@@ -26,7 +31,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
26
31
|
* DOMUtils.attr(document.querySelector("a.xx"),"href","abcd");
|
|
27
32
|
* DOMUtils.attr("a.xx","href","abcd");
|
|
28
33
|
*/
|
|
29
|
-
attr(element:
|
|
34
|
+
attr(element: DOMUtilsTargetElementType, attrName: string, attrValue: string | boolean | number): void;
|
|
30
35
|
/**
|
|
31
36
|
* 创建元素
|
|
32
37
|
* @param tagName 标签名
|
|
@@ -66,7 +71,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
66
71
|
* DOMUtils.css("a.xx","display");
|
|
67
72
|
* > "none"
|
|
68
73
|
* */
|
|
69
|
-
css(element:
|
|
74
|
+
css(element: DOMUtilsTargetElementType, property: keyof CSSStyleDeclaration): string;
|
|
70
75
|
/**
|
|
71
76
|
* 获取元素的样式属性值
|
|
72
77
|
* @param element 目标元素
|
|
@@ -77,7 +82,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
77
82
|
* DOMUtils.css("a.xx","display");
|
|
78
83
|
* > "none"
|
|
79
84
|
* */
|
|
80
|
-
css(element:
|
|
85
|
+
css(element: DOMUtilsTargetElementType, property: string): string;
|
|
81
86
|
/**
|
|
82
87
|
* 设置元素的样式属性
|
|
83
88
|
* @param element 目标元素
|
|
@@ -94,7 +99,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
94
99
|
* DOMUtils.css(document.querySelector("a.xx"),"top","10px");
|
|
95
100
|
* DOMUtils.css(document.querySelector("a.xx"),"top",10);
|
|
96
101
|
* */
|
|
97
|
-
css(element:
|
|
102
|
+
css(element: DOMUtilsTargetElementType, property: keyof CSSStyleDeclaration & string, value: string | number): string;
|
|
98
103
|
/**
|
|
99
104
|
* 设置元素的样式属性
|
|
100
105
|
* @param element 目标元素
|
|
@@ -109,7 +114,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
109
114
|
* DOMUtils.css(document.querySelector("a.xx"),{ top: "10px" });
|
|
110
115
|
* DOMUtils.css(document.querySelector("a.xx"),{ top: 10 });
|
|
111
116
|
* */
|
|
112
|
-
css(element:
|
|
117
|
+
css(element: DOMUtilsTargetElementType, property: {
|
|
113
118
|
[P in keyof CSSStyleDeclaration]?: CSSStyleDeclaration[P];
|
|
114
119
|
} | {
|
|
115
120
|
[key: string]: string | number;
|
|
@@ -124,7 +129,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
124
129
|
* DOMUtils.text("a.xx","abcd")
|
|
125
130
|
* DOMUtils.text("a.xx",document.querySelector("b"))
|
|
126
131
|
* */
|
|
127
|
-
text(element:
|
|
132
|
+
text(element: DOMUtilsTargetElementType): string;
|
|
128
133
|
/**
|
|
129
134
|
* 设置元素的文本内容
|
|
130
135
|
* @param element 目标元素
|
|
@@ -136,7 +141,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
136
141
|
* DOMUtils.text("a.xx","abcd")
|
|
137
142
|
* DOMUtils.text("a.xx",document.querySelector("b"))
|
|
138
143
|
* */
|
|
139
|
-
text(element:
|
|
144
|
+
text(element: DOMUtilsTargetElementType, text: string | HTMLElement | Element | number): void;
|
|
140
145
|
/**
|
|
141
146
|
* 设置元素的HTML内容
|
|
142
147
|
* @param element 目标元素
|
|
@@ -148,7 +153,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
148
153
|
* DOMUtils.html("a.xx","<b>abcd</b>")
|
|
149
154
|
* DOMUtils.html("a.xx",document.querySelector("b"))
|
|
150
155
|
* */
|
|
151
|
-
html(element:
|
|
156
|
+
html(element: DOMUtilsTargetElementType, html: string | HTMLElement | Element | number): void;
|
|
152
157
|
/**
|
|
153
158
|
* 获取元素的HTML内容
|
|
154
159
|
* @param element 目标元素
|
|
@@ -160,7 +165,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
160
165
|
* DOMUtils.html("a.xx","<b>abcd</b>")
|
|
161
166
|
* DOMUtils.html("a.xx",document.querySelector("b"))
|
|
162
167
|
* */
|
|
163
|
-
html(element:
|
|
168
|
+
html(element: DOMUtilsTargetElementType): string;
|
|
164
169
|
/**
|
|
165
170
|
* 获取移动元素的transform偏移
|
|
166
171
|
*/
|
|
@@ -179,7 +184,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
179
184
|
* DOMUtils.val(document.querySelector("input.xx"),true)
|
|
180
185
|
* DOMUtils.val("input.xx",true)
|
|
181
186
|
* */
|
|
182
|
-
val(element: HTMLInputElement | string
|
|
187
|
+
val(element: HTMLInputElement | HTMLTextAreaElement | string | (HTMLInputElement | HTMLTextAreaElement)[] | NodeListOf<HTMLInputElement | HTMLTextAreaElement>, value: string | boolean): void;
|
|
183
188
|
/**
|
|
184
189
|
* 获取value属性值
|
|
185
190
|
* @param element 目标元素
|
|
@@ -187,7 +192,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
187
192
|
* // 获取元素textarea的值
|
|
188
193
|
* DOMUtils.val(document.querySelector("textarea.xx"))
|
|
189
194
|
* */
|
|
190
|
-
val(element: HTMLInputElement | string): string;
|
|
195
|
+
val(element: HTMLInputElement | HTMLTextAreaElement | string | (HTMLInputElement | HTMLTextAreaElement)[] | NodeListOf<HTMLInputElement | HTMLTextAreaElement>): string;
|
|
191
196
|
/**
|
|
192
197
|
* 获取value属性值
|
|
193
198
|
* @param element 目标元素
|
|
@@ -196,7 +201,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
196
201
|
* DOMUtils.val(document.querySelector("input.xx"))
|
|
197
202
|
* DOMUtils.val("input.xx")
|
|
198
203
|
* */
|
|
199
|
-
val(element: HTMLInputElement): boolean | string;
|
|
204
|
+
val(element: HTMLInputElement | HTMLTextAreaElement | (HTMLInputElement | HTMLTextAreaElement)[] | NodeListOf<HTMLInputElement | HTMLTextAreaElement>): boolean | string;
|
|
200
205
|
/**
|
|
201
206
|
* 获取元素的属性值
|
|
202
207
|
* @param element 目标元素
|
|
@@ -208,7 +213,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
208
213
|
* DOMUtils.val("a.xx","data-value")
|
|
209
214
|
* > undefined
|
|
210
215
|
* */
|
|
211
|
-
prop<T extends any>(element:
|
|
216
|
+
prop<T extends any>(element: DOMUtilsTargetElementType, propName: string): T;
|
|
212
217
|
/**
|
|
213
218
|
* 设置元素的属性值
|
|
214
219
|
* @param element 目标元素
|
|
@@ -219,7 +224,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
219
224
|
* DOMUtils.val(document.querySelector("a.xx"),"data-value",1)
|
|
220
225
|
* DOMUtils.val("a.xx","data-value",1)
|
|
221
226
|
* */
|
|
222
|
-
prop<T extends any>(element:
|
|
227
|
+
prop<T extends any>(element: DOMUtilsTargetElementType, propName: string, propValue: T): void;
|
|
223
228
|
/**
|
|
224
229
|
* 移除元素的属性
|
|
225
230
|
* @param element 目标元素
|
|
@@ -229,7 +234,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
229
234
|
* DOMUtils.removeAttr(document.querySelector("a.xx"),"data-value")
|
|
230
235
|
* DOMUtils.removeAttr("a.xx","data-value")
|
|
231
236
|
* */
|
|
232
|
-
removeAttr(element:
|
|
237
|
+
removeAttr(element: DOMUtilsTargetElementType, attrName: string): void;
|
|
233
238
|
/**
|
|
234
239
|
* 移除元素class名
|
|
235
240
|
* @param element 目标元素
|
|
@@ -239,7 +244,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
239
244
|
* DOMUtils.removeClass(document.querySelector("a.xx"),"xx")
|
|
240
245
|
* DOMUtils.removeClass("a.xx","xx")
|
|
241
246
|
*/
|
|
242
|
-
removeClass(element:
|
|
247
|
+
removeClass(element: DOMUtilsTargetElementType, className?: string | string[] | undefined | null): void;
|
|
243
248
|
/**
|
|
244
249
|
* 移除元素的属性
|
|
245
250
|
* @param element 目标元素
|
|
@@ -249,7 +254,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
249
254
|
* DOMUtils.removeProp(document.querySelector("a.xx"),"href")
|
|
250
255
|
* DOMUtils.removeProp("a.xx","href")
|
|
251
256
|
* */
|
|
252
|
-
removeProp(element:
|
|
257
|
+
removeProp(element: DOMUtilsTargetElementType, propName: string): void;
|
|
253
258
|
/**
|
|
254
259
|
* 将一个元素替换为另一个元素
|
|
255
260
|
* @param element 目标元素
|
|
@@ -259,7 +264,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
259
264
|
* DOMUtils.replaceWith(document.querySelector("a.xx"),document.querySelector("b.xx"))
|
|
260
265
|
* DOMUtils.replaceWith("a.xx",'<b class="xx"></b>')
|
|
261
266
|
*/
|
|
262
|
-
replaceWith(element:
|
|
267
|
+
replaceWith(element: DOMUtilsTargetElementType, newElement: HTMLElement | string | Node): void;
|
|
263
268
|
/**
|
|
264
269
|
* 给元素添加class
|
|
265
270
|
* @param element 目标元素
|
|
@@ -269,7 +274,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
269
274
|
* DOMUtils.addClass(document.querySelector("a.xx"),"_vue_")
|
|
270
275
|
* DOMUtils.addClass("a.xx","_vue_")
|
|
271
276
|
* */
|
|
272
|
-
addClass(element:
|
|
277
|
+
addClass(element: DOMUtilsTargetElementType, className: string | string[]): void;
|
|
273
278
|
/**
|
|
274
279
|
* 函数在元素内部末尾添加子元素或HTML字符串
|
|
275
280
|
* @param element 目标元素
|
|
@@ -279,7 +284,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
279
284
|
* DOMUtils.append(document.querySelector("a.xx"),document.querySelector("b.xx"))
|
|
280
285
|
* DOMUtils.append("a.xx","'<b class="xx"></b>")
|
|
281
286
|
* */
|
|
282
|
-
append(element:
|
|
287
|
+
append(element: DOMUtilsTargetElementType, content: HTMLElement | string | (HTMLElement | string | Element)[] | NodeList): void;
|
|
283
288
|
/**
|
|
284
289
|
* 函数 在元素内部开头添加子元素或HTML字符串
|
|
285
290
|
* @param element 目标元素
|
|
@@ -289,7 +294,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
289
294
|
* DOMUtils.prepend(document.querySelector("a.xx"),document.querySelector("b.xx"))
|
|
290
295
|
* DOMUtils.prepend("a.xx","'<b class="xx"></b>")
|
|
291
296
|
* */
|
|
292
|
-
prepend(element:
|
|
297
|
+
prepend(element: DOMUtilsTargetElementType, content: HTMLElement | string): void;
|
|
293
298
|
/**
|
|
294
299
|
* 在元素后面添加兄弟元素或HTML字符串
|
|
295
300
|
* @param element 目标元素
|
|
@@ -299,7 +304,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
299
304
|
* DOMUtils.after(document.querySelector("a.xx"),document.querySelector("b.xx"))
|
|
300
305
|
* DOMUtils.after("a.xx","'<b class="xx"></b>")
|
|
301
306
|
* */
|
|
302
|
-
after(element:
|
|
307
|
+
after(element: DOMUtilsTargetElementType, content: HTMLElement | string): void;
|
|
303
308
|
/**
|
|
304
309
|
* 在元素前面添加兄弟元素或HTML字符串
|
|
305
310
|
* @param element 目标元素
|
|
@@ -309,17 +314,17 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
309
314
|
* DOMUtils.before(document.querySelector("a.xx"),document.querySelector("b.xx"))
|
|
310
315
|
* DOMUtils.before("a.xx","'<b class="xx"></b>")
|
|
311
316
|
* */
|
|
312
|
-
before(element:
|
|
317
|
+
before(element: DOMUtilsTargetElementType, content: HTMLElement | string): void;
|
|
313
318
|
/**
|
|
314
319
|
* 移除元素
|
|
315
|
-
* @param
|
|
320
|
+
* @param element 目标元素
|
|
316
321
|
* @example
|
|
317
322
|
* // 元素a.xx前面添加一个元素
|
|
318
323
|
* DOMUtils.remove(document.querySelector("a.xx"))
|
|
319
324
|
* DOMUtils.remove(document.querySelectorAll("a.xx"))
|
|
320
325
|
* DOMUtils.remove("a.xx")
|
|
321
326
|
* */
|
|
322
|
-
remove(
|
|
327
|
+
remove(element: DOMUtilsTargetElementType): void;
|
|
323
328
|
/**
|
|
324
329
|
* 移除元素的所有子元素
|
|
325
330
|
* @param element 目标元素
|
|
@@ -328,7 +333,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
328
333
|
* DOMUtils.empty(document.querySelector("a.xx"))
|
|
329
334
|
* DOMUtils.empty("a.xx")
|
|
330
335
|
* */
|
|
331
|
-
empty(element:
|
|
336
|
+
empty(element: DOMUtilsTargetElementType): void;
|
|
332
337
|
/**
|
|
333
338
|
* 获取元素相对于文档的偏移坐标(加上文档的滚动条)
|
|
334
339
|
* @param element 目标元素
|
|
@@ -347,6 +352,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
347
352
|
/**
|
|
348
353
|
* 获取元素的宽度
|
|
349
354
|
* @param element 要获取宽度的元素
|
|
355
|
+
* @param value 宽度值
|
|
350
356
|
* @param isShow 是否已进行isShow,避免爆堆栈
|
|
351
357
|
* @returns 元素的宽度,单位为像素
|
|
352
358
|
* @example
|
|
@@ -362,7 +368,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
362
368
|
* DOMUtils.width(document.querySelector("a.xx"),200)
|
|
363
369
|
* DOMUtils.width("a.xx",200)
|
|
364
370
|
*/
|
|
365
|
-
width(element: HTMLElement | string | Window | Document, isShow?: boolean): number;
|
|
371
|
+
width(element: HTMLElement | string | Window | typeof globalThis | Document, isShow?: boolean): number;
|
|
366
372
|
/**
|
|
367
373
|
* 获取元素的高度
|
|
368
374
|
* @param element 要获取高度的元素
|
|
@@ -381,7 +387,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
381
387
|
* DOMUtils.height(document.querySelector("a.xx"),200)
|
|
382
388
|
* DOMUtils.height("a.xx",200)
|
|
383
389
|
*/
|
|
384
|
-
height(element: HTMLElement | string | Window | Document, isShow?: boolean): number;
|
|
390
|
+
height(element: HTMLElement | string | Window | typeof globalThis | Document, isShow?: boolean): number;
|
|
385
391
|
/**
|
|
386
392
|
* 获取元素的外部宽度(包括边框和外边距)
|
|
387
393
|
* @param {HTMLElement|string} element 要获取外部宽度的元素
|
|
@@ -396,7 +402,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
396
402
|
* DOMUtils.outerWidth(window)
|
|
397
403
|
* > 400
|
|
398
404
|
*/
|
|
399
|
-
outerWidth(element: HTMLElement | string | Window | Document, isShow?: boolean): number;
|
|
405
|
+
outerWidth(element: HTMLElement | string | Window | typeof globalThis | Document, isShow?: boolean): number;
|
|
400
406
|
/**
|
|
401
407
|
* 获取元素的外部高度(包括边框和外边距)
|
|
402
408
|
* @param {HTMLElement|string} element 要获取外部高度的元素
|
|
@@ -411,7 +417,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
411
417
|
* DOMUtils.outerHeight(window)
|
|
412
418
|
* > 700
|
|
413
419
|
*/
|
|
414
|
-
outerHeight(element: HTMLElement | string | Window, isShow?: boolean): number;
|
|
420
|
+
outerHeight(element: HTMLElement | string | Window | typeof globalThis | Document, isShow?: boolean): number;
|
|
415
421
|
/**
|
|
416
422
|
* 在一定时间内改变元素的样式属性,实现动画效果
|
|
417
423
|
* @param element 需要进行动画的元素
|
|
@@ -424,7 +430,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
424
430
|
* console.log("已往上位移100px")
|
|
425
431
|
* })
|
|
426
432
|
*/
|
|
427
|
-
animate(element:
|
|
433
|
+
animate(element: DOMUtilsTargetElementType, styles: CSSStyleDeclaration, duration?: number, callback?: (() => void) | undefined | null): void;
|
|
428
434
|
/**
|
|
429
435
|
* 将一个元素包裹在指定的HTML元素中
|
|
430
436
|
* @param element 要包裹的元素
|
|
@@ -433,7 +439,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
433
439
|
* // 将a.xx元素外面包裹一层div
|
|
434
440
|
* DOMUtils.wrap(document.querySelector("a.xx"),"<div></div>")
|
|
435
441
|
*/
|
|
436
|
-
wrap(element:
|
|
442
|
+
wrap(element: DOMUtilsTargetElementType, wrapperHTML: string): void;
|
|
437
443
|
/**
|
|
438
444
|
* 获取当前元素的前一个兄弟元素
|
|
439
445
|
* @param element 当前元素
|
|
@@ -524,26 +530,40 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
524
530
|
* > #document
|
|
525
531
|
*/
|
|
526
532
|
parseHTML<T1 extends boolean, T2 extends boolean>(html: string, useParser?: T1, isComplete?: T2): ParseHTMLReturnType<T1, T2>;
|
|
533
|
+
/**
|
|
534
|
+
* 序列化表单元素
|
|
535
|
+
* @param $form 表单元素
|
|
536
|
+
* @example
|
|
537
|
+
* DOMUtils.serialize(document.querySelector("form"))
|
|
538
|
+
* > xxx=xxx&aaa=
|
|
539
|
+
*/
|
|
540
|
+
serialize($form: HTMLFormElement): string;
|
|
527
541
|
/**
|
|
528
542
|
* 显示元素
|
|
529
543
|
* @param target 当前元素
|
|
544
|
+
* @param checkVisiblie 是否检测元素是否显示
|
|
545
|
+
* + true (默认)如果检测到还未显示,则强制使用display: unset !important;
|
|
546
|
+
* + false 不检测,直接设置display属性为空
|
|
530
547
|
* @example
|
|
531
548
|
* // 显示a.xx元素
|
|
532
549
|
* DOMUtils.show(document.querySelector("a.xx"))
|
|
533
550
|
* DOMUtils.show(document.querySelectorAll("a.xx"))
|
|
534
551
|
* DOMUtils.show("a.xx")
|
|
535
552
|
*/
|
|
536
|
-
show(target:
|
|
553
|
+
show(target: DOMUtilsTargetElementType, checkVisiblie?: boolean): void;
|
|
537
554
|
/**
|
|
538
555
|
* 隐藏元素
|
|
539
556
|
* @param target 当前元素
|
|
557
|
+
* @param checkVisiblie 是否检测元素是否显示
|
|
558
|
+
* + true (默认)如果检测到显示,则强制使用display: none !important;
|
|
559
|
+
* + false 不检测,直接设置display属性为none
|
|
540
560
|
* @example
|
|
541
561
|
* // 隐藏a.xx元素
|
|
542
562
|
* DOMUtils.hide(document.querySelector("a.xx"))
|
|
543
563
|
* DOMUtils.hide(document.querySelectorAll("a.xx"))
|
|
544
564
|
* DOMUtils.hide("a.xx")
|
|
545
565
|
*/
|
|
546
|
-
hide(target:
|
|
566
|
+
hide(target: DOMUtilsTargetElementType, checkVisiblie?: boolean): void;
|
|
547
567
|
/**
|
|
548
568
|
* 淡入元素
|
|
549
569
|
* @param element 当前元素
|
|
@@ -558,7 +578,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
558
578
|
* console.log("淡入完毕");
|
|
559
579
|
* })
|
|
560
580
|
*/
|
|
561
|
-
fadeIn(element:
|
|
581
|
+
fadeIn(element: DOMUtilsTargetElementType, duration?: number, callback?: () => void): void;
|
|
562
582
|
/**
|
|
563
583
|
* 淡出元素
|
|
564
584
|
* @param element 当前元素
|
|
@@ -573,16 +593,17 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
573
593
|
* console.log("淡出完毕");
|
|
574
594
|
* })
|
|
575
595
|
*/
|
|
576
|
-
fadeOut(element:
|
|
596
|
+
fadeOut(element: DOMUtilsTargetElementType, duration?: number, callback?: () => void): void;
|
|
577
597
|
/**
|
|
578
598
|
* 切换元素的显示和隐藏状态
|
|
579
599
|
* @param element 当前元素
|
|
600
|
+
* @param checkVisiblie 是否检测元素是否显示
|
|
580
601
|
* @example
|
|
581
602
|
* // 如果元素a.xx当前是隐藏,则显示,如果是显示,则隐藏
|
|
582
603
|
* DOMUtils.toggle(document.querySelector("a.xx"))
|
|
583
604
|
* DOMUtils.toggle("a.xx")
|
|
584
605
|
*/
|
|
585
|
-
toggle(element:
|
|
606
|
+
toggle(element: DOMUtilsTargetElementType, checkVisiblie?: boolean): void;
|
|
586
607
|
/**
|
|
587
608
|
* 创建一个新的DOMUtils实例
|
|
588
609
|
* @param option
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { DOMUtilsTargetElementType } from "./types/global";
|
|
1
2
|
import { UtilsWindowApiOption } from "./WindowApi";
|
|
2
3
|
export type DOMUtilsEventObject<T extends Node> = Event & {
|
|
3
4
|
target: T;
|
|
@@ -384,7 +385,7 @@ export declare class DOMUtilsEvent {
|
|
|
384
385
|
* DOMUtils.trigger(document.querySelector("a.xx"),"click tap hover")
|
|
385
386
|
* DOMUtils.trigger("a.xx",["click","tap","hover"])
|
|
386
387
|
*/
|
|
387
|
-
trigger(element:
|
|
388
|
+
trigger(element: DOMUtilsTargetElementType | any[] | typeof globalThis | Window | Document, eventType: string, details?: object, useDispatchToTriggerEvent?: boolean): void;
|
|
388
389
|
/**
|
|
389
390
|
* 主动触发事件
|
|
390
391
|
* @param element 需要触发的元素|元素数组|window
|
|
@@ -414,7 +415,7 @@ export declare class DOMUtilsEvent {
|
|
|
414
415
|
* console.log("触发click事件成功")
|
|
415
416
|
* })
|
|
416
417
|
* */
|
|
417
|
-
click(element:
|
|
418
|
+
click(element: DOMUtilsTargetElementType | typeof globalThis | Window, handler?: (event: DOMUtils_Event["click"]) => void, details?: any, useDispatchToTriggerEvent?: boolean): void;
|
|
418
419
|
/**
|
|
419
420
|
* 绑定或触发元素的blur事件
|
|
420
421
|
* @param element 目标元素
|
|
@@ -429,7 +430,7 @@ export declare class DOMUtilsEvent {
|
|
|
429
430
|
* console.log("触发blur事件成功")
|
|
430
431
|
* })
|
|
431
432
|
* */
|
|
432
|
-
blur(element:
|
|
433
|
+
blur(element: DOMUtilsTargetElementType | typeof globalThis | Window, handler?: (event: DOMUtils_Event["blur"]) => void, details?: object, useDispatchToTriggerEvent?: boolean): void;
|
|
433
434
|
/**
|
|
434
435
|
* 绑定或触发元素的focus事件
|
|
435
436
|
* @param element 目标元素
|
|
@@ -444,7 +445,7 @@ export declare class DOMUtilsEvent {
|
|
|
444
445
|
* console.log("触发focus事件成功")
|
|
445
446
|
* })
|
|
446
447
|
* */
|
|
447
|
-
focus(element:
|
|
448
|
+
focus(element: DOMUtilsTargetElementType | typeof globalThis | Window, handler?: (event: DOMUtils_Event["focus"]) => void, details?: object, useDispatchToTriggerEvent?: boolean): void;
|
|
448
449
|
/**
|
|
449
450
|
* 当鼠标移入或移出元素时触发事件
|
|
450
451
|
* @param element 当前元素
|
|
@@ -459,11 +460,11 @@ export declare class DOMUtilsEvent {
|
|
|
459
460
|
* console.log("移入/移除");
|
|
460
461
|
* })
|
|
461
462
|
*/
|
|
462
|
-
hover(element:
|
|
463
|
+
hover(element: DOMUtilsTargetElementType, handler: (event: DOMUtils_Event["hover"]) => void, option?: boolean | AddEventListenerOptions): void;
|
|
463
464
|
/**
|
|
464
465
|
* 当按键松开时触发事件
|
|
465
466
|
* keydown - > keypress - > keyup
|
|
466
|
-
* @param
|
|
467
|
+
* @param element 当前元素
|
|
467
468
|
* @param handler 事件处理函数
|
|
468
469
|
* @param option 配置
|
|
469
470
|
* @example
|
|
@@ -475,11 +476,11 @@ export declare class DOMUtilsEvent {
|
|
|
475
476
|
* console.log("按键松开");
|
|
476
477
|
* })
|
|
477
478
|
*/
|
|
478
|
-
keyup(
|
|
479
|
+
keyup(element: DOMUtilsTargetElementType | Window | typeof globalThis, handler: (event: DOMUtils_Event["keyup"]) => void, option?: boolean | AddEventListenerOptions): void;
|
|
479
480
|
/**
|
|
480
481
|
* 当按键按下时触发事件
|
|
481
482
|
* keydown - > keypress - > keyup
|
|
482
|
-
* @param
|
|
483
|
+
* @param element 目标
|
|
483
484
|
* @param handler 事件处理函数
|
|
484
485
|
* @param option 配置
|
|
485
486
|
* @example
|
|
@@ -491,11 +492,11 @@ export declare class DOMUtilsEvent {
|
|
|
491
492
|
* console.log("按键按下");
|
|
492
493
|
* })
|
|
493
494
|
*/
|
|
494
|
-
keydown(
|
|
495
|
+
keydown(element: DOMUtilsTargetElementType | Window | typeof globalThis, handler: (event: DOMUtils_Event["keydown"]) => void, option?: boolean | AddEventListenerOptions): void;
|
|
495
496
|
/**
|
|
496
497
|
* 当按键按下时触发事件
|
|
497
498
|
* keydown - > keypress - > keyup
|
|
498
|
-
* @param
|
|
499
|
+
* @param element 目标
|
|
499
500
|
* @param handler 事件处理函数
|
|
500
501
|
* @param option 配置
|
|
501
502
|
* @example
|
|
@@ -507,11 +508,11 @@ export declare class DOMUtilsEvent {
|
|
|
507
508
|
* console.log("按键按下");
|
|
508
509
|
* })
|
|
509
510
|
*/
|
|
510
|
-
keypress(
|
|
511
|
+
keypress(element: DOMUtilsTargetElementType | Window | typeof globalThis, handler: (event: DOMUtils_Event["keypress"]) => void, option?: boolean | AddEventListenerOptions): void;
|
|
511
512
|
/**
|
|
512
513
|
* 监听某个元素键盘按键事件或window全局按键事件
|
|
513
514
|
* 按下有值的键时触发,按下Ctrl\Alt\Shift\Meta是无值键。按下先触发keydown事件,再触发keypress事件。
|
|
514
|
-
* @param
|
|
515
|
+
* @param element 需要监听的对象,可以是全局Window或者某个元素
|
|
515
516
|
* @param eventName 事件名,默认keypress
|
|
516
517
|
* @param callback 自己定义的回调事件,参数1为当前的key,参数2为组合按键,数组类型,包含ctrl、shift、alt和meta(win键或mac的cmd键)
|
|
517
518
|
* @param options 监听事件的配置
|
|
@@ -571,7 +572,45 @@ export declare class DOMUtilsEvent {
|
|
|
571
572
|
搜索 170
|
|
572
573
|
收藏 171
|
|
573
574
|
**/
|
|
574
|
-
listenKeyboard(
|
|
575
|
+
listenKeyboard(element: DOMUtilsTargetElementType | Window | Node | typeof globalThis, eventName: ("keyup" | "keypress" | "keydown") | undefined, callback: (keyName: string, keyValue: number, otherCodeList: string[], event: KeyboardEvent) => void, options?: AddEventListenerOptions | boolean): {
|
|
575
576
|
removeListen(): void;
|
|
576
577
|
};
|
|
578
|
+
/**
|
|
579
|
+
* 选择器,可使用以下的额外语法
|
|
580
|
+
*
|
|
581
|
+
* + :contains([text]) 作用: 找到包含指定文本内容的指定元素
|
|
582
|
+
* + :empty 作用:找到既没有文本内容也没有子元素的指定元素
|
|
583
|
+
* + :regexp([text]) 作用: 找到符合正则表达式的内容的指定元素
|
|
584
|
+
* @param selector
|
|
585
|
+
* @example
|
|
586
|
+
* DOMUtils.selector("div:contains('测试')")
|
|
587
|
+
* > div.xxx
|
|
588
|
+
* @example
|
|
589
|
+
* DOMUtils.selector("div:empty")
|
|
590
|
+
* > div.xxx
|
|
591
|
+
* @example
|
|
592
|
+
* DOMUtils.selector("div:regexp('^xxxx$')")
|
|
593
|
+
* > div.xxx
|
|
594
|
+
*/
|
|
595
|
+
selector<K extends keyof HTMLElementTagNameMap>(selector: K): HTMLElementTagNameMap[K] | undefined;
|
|
596
|
+
selector<E extends Element = Element>(selector: string): E | undefined;
|
|
597
|
+
/**
|
|
598
|
+
* 选择器,可使用以下的额外语法
|
|
599
|
+
*
|
|
600
|
+
* + :contains([text]) 作用: 找到包含指定文本内容的指定元素
|
|
601
|
+
* + :empty 作用:找到既没有文本内容也没有子元素的指定元素
|
|
602
|
+
* + :regexp([text]) 作用: 找到符合正则表达式的内容的指定元素
|
|
603
|
+
* @param selector
|
|
604
|
+
* @example
|
|
605
|
+
* DOMUtils.selectorAll("div:contains('测试')")
|
|
606
|
+
* > [div.xxx]
|
|
607
|
+
* @example
|
|
608
|
+
* DOMUtils.selectorAll("div:empty")
|
|
609
|
+
* > [div.xxx]
|
|
610
|
+
* @example
|
|
611
|
+
* DOMUtils.selectorAll("div:regexp('^xxxx$')")
|
|
612
|
+
* > [div.xxx]
|
|
613
|
+
*/
|
|
614
|
+
selectorAll<K extends keyof HTMLElementTagNameMap>(selector: K): HTMLElementTagNameMap[K][];
|
|
615
|
+
selectorAll<E extends Element = Element>(selector: string): E[];
|
|
577
616
|
}
|