@whitesev/domutils 1.3.7 → 1.3.8
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 +49 -16
- package/dist/index.amd.js.map +1 -1
- package/dist/index.cjs.js +49 -16
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +49 -16
- package/dist/index.esm.js.map +1 -1
- package/dist/index.iife.js +49 -16
- package/dist/index.iife.js.map +1 -1
- package/dist/index.system.js +49 -16
- package/dist/index.system.js.map +1 -1
- package/dist/index.umd.js +49 -16
- package/dist/index.umd.js.map +1 -1
- package/dist/types/src/DOMUtils.d.ts +9 -3
- package/package.json +1 -1
- package/src/DOMUtils.ts +62 -38
- package/src/DOMUtilsEvent.ts +2 -6
|
@@ -184,7 +184,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
184
184
|
* DOMUtils.val(document.querySelector("input.xx"),true)
|
|
185
185
|
* DOMUtils.val("input.xx",true)
|
|
186
186
|
* */
|
|
187
|
-
val(element: HTMLInputElement | HTMLTextAreaElement | string | (HTMLInputElement | HTMLTextAreaElement)[] | NodeListOf<HTMLInputElement | HTMLTextAreaElement>, value: string | boolean | number): void;
|
|
187
|
+
val(element: HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement | string | (HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement)[] | NodeListOf<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>, value: string | boolean | number): void;
|
|
188
188
|
/**
|
|
189
189
|
* 获取value属性值
|
|
190
190
|
* @param element 目标元素
|
|
@@ -192,7 +192,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
192
192
|
* // 获取元素textarea的值
|
|
193
193
|
* DOMUtils.val(document.querySelector("textarea.xx"))
|
|
194
194
|
* */
|
|
195
|
-
val(element: HTMLInputElement | HTMLTextAreaElement | string | (HTMLInputElement | HTMLTextAreaElement)[] | NodeListOf<HTMLInputElement | HTMLTextAreaElement>): string;
|
|
195
|
+
val(element: HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement | string | (HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement)[] | NodeListOf<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>): string;
|
|
196
196
|
/**
|
|
197
197
|
* 获取value属性值
|
|
198
198
|
* @param element 目标元素
|
|
@@ -201,7 +201,7 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
201
201
|
* DOMUtils.val(document.querySelector("input.xx"))
|
|
202
202
|
* DOMUtils.val("input.xx")
|
|
203
203
|
* */
|
|
204
|
-
val(element: HTMLInputElement | HTMLTextAreaElement | (HTMLInputElement | HTMLTextAreaElement)[] | NodeListOf<HTMLInputElement | HTMLTextAreaElement>): boolean | string;
|
|
204
|
+
val(element: HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement | (HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement)[] | NodeListOf<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>): boolean | string;
|
|
205
205
|
/**
|
|
206
206
|
* 获取元素的属性值
|
|
207
207
|
* @param element 目标元素
|
|
@@ -275,6 +275,12 @@ declare class DOMUtils extends DOMUtilsEvent {
|
|
|
275
275
|
* DOMUtils.addClass("a.xx","_vue_")
|
|
276
276
|
* */
|
|
277
277
|
addClass(element: DOMUtilsTargetElementType, className: string | string[]): void;
|
|
278
|
+
/**
|
|
279
|
+
* 判断元素是否存在className
|
|
280
|
+
* @param element
|
|
281
|
+
* @param className
|
|
282
|
+
*/
|
|
283
|
+
hasClass(element: DOMUtilsTargetElementType, className: string | string[]): boolean;
|
|
278
284
|
/**
|
|
279
285
|
* 函数在元素内部末尾添加子元素或HTML字符串
|
|
280
286
|
* @param element 目标元素
|
package/package.json
CHANGED
package/src/DOMUtils.ts
CHANGED
|
@@ -489,9 +489,10 @@ class DOMUtils extends DOMUtilsEvent {
|
|
|
489
489
|
element:
|
|
490
490
|
| HTMLInputElement
|
|
491
491
|
| HTMLTextAreaElement
|
|
492
|
+
| HTMLSelectElement
|
|
492
493
|
| string
|
|
493
|
-
| (HTMLInputElement | HTMLTextAreaElement)[]
|
|
494
|
-
| NodeListOf<HTMLInputElement | HTMLTextAreaElement>,
|
|
494
|
+
| (HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement)[]
|
|
495
|
+
| NodeListOf<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>,
|
|
495
496
|
value: string | boolean | number
|
|
496
497
|
): void;
|
|
497
498
|
/**
|
|
@@ -505,9 +506,10 @@ class DOMUtils extends DOMUtilsEvent {
|
|
|
505
506
|
element:
|
|
506
507
|
| HTMLInputElement
|
|
507
508
|
| HTMLTextAreaElement
|
|
509
|
+
| HTMLSelectElement
|
|
508
510
|
| string
|
|
509
|
-
| (HTMLInputElement | HTMLTextAreaElement)[]
|
|
510
|
-
| NodeListOf<HTMLInputElement | HTMLTextAreaElement>
|
|
511
|
+
| (HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement)[]
|
|
512
|
+
| NodeListOf<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>
|
|
511
513
|
): string;
|
|
512
514
|
/**
|
|
513
515
|
* 获取value属性值
|
|
@@ -521,16 +523,18 @@ class DOMUtils extends DOMUtilsEvent {
|
|
|
521
523
|
element:
|
|
522
524
|
| HTMLInputElement
|
|
523
525
|
| HTMLTextAreaElement
|
|
524
|
-
|
|
|
525
|
-
|
|
|
526
|
+
| HTMLSelectElement
|
|
527
|
+
| (HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement)[]
|
|
528
|
+
| NodeListOf<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>
|
|
526
529
|
): boolean | string;
|
|
527
530
|
val(
|
|
528
531
|
element:
|
|
529
532
|
| HTMLInputElement
|
|
530
533
|
| HTMLTextAreaElement
|
|
534
|
+
| HTMLSelectElement
|
|
531
535
|
| string
|
|
532
|
-
| (HTMLInputElement | HTMLTextAreaElement)[]
|
|
533
|
-
| NodeListOf<HTMLInputElement | HTMLTextAreaElement>,
|
|
536
|
+
| (HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement)[]
|
|
537
|
+
| NodeListOf<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>,
|
|
534
538
|
value?: string | boolean | number
|
|
535
539
|
) {
|
|
536
540
|
let DOMUtilsContext = this;
|
|
@@ -785,6 +789,44 @@ class DOMUtils extends DOMUtilsEvent {
|
|
|
785
789
|
element.classList.add(itemClassName);
|
|
786
790
|
});
|
|
787
791
|
}
|
|
792
|
+
/**
|
|
793
|
+
* 判断元素是否存在className
|
|
794
|
+
* @param element
|
|
795
|
+
* @param className
|
|
796
|
+
*/
|
|
797
|
+
hasClass(
|
|
798
|
+
element: DOMUtilsTargetElementType,
|
|
799
|
+
className: string | string[]
|
|
800
|
+
): boolean {
|
|
801
|
+
let DOMUtilsContext = this;
|
|
802
|
+
if (typeof element === "string") {
|
|
803
|
+
element = DOMUtilsContext.selectorAll(element);
|
|
804
|
+
}
|
|
805
|
+
if (element == null) {
|
|
806
|
+
return false;
|
|
807
|
+
}
|
|
808
|
+
if (isNodeList(element)) {
|
|
809
|
+
let flag = true;
|
|
810
|
+
for (let index = 0; index < element.length; index++) {
|
|
811
|
+
const $ele = element[index] as HTMLElement;
|
|
812
|
+
flag = flag && DOMUtilsContext.hasClass($ele, className);
|
|
813
|
+
}
|
|
814
|
+
return flag;
|
|
815
|
+
}
|
|
816
|
+
if (!element?.classList) {
|
|
817
|
+
return false;
|
|
818
|
+
}
|
|
819
|
+
if (!Array.isArray(className)) {
|
|
820
|
+
className = className.split(" ");
|
|
821
|
+
}
|
|
822
|
+
for (let index = 0; index < className.length; index++) {
|
|
823
|
+
const item = className[index].trim();
|
|
824
|
+
if (!element.classList.contains(item)) {
|
|
825
|
+
return false;
|
|
826
|
+
}
|
|
827
|
+
}
|
|
828
|
+
return true;
|
|
829
|
+
}
|
|
788
830
|
/**
|
|
789
831
|
* 函数在元素内部末尾添加子元素或HTML字符串
|
|
790
832
|
* @param element 目标元素
|
|
@@ -1008,9 +1050,7 @@ class DOMUtils extends DOMUtilsEvent {
|
|
|
1008
1050
|
offset(element: HTMLElement | string) {
|
|
1009
1051
|
let DOMUtilsContext = this;
|
|
1010
1052
|
if (typeof element === "string") {
|
|
1011
|
-
element = DOMUtilsContext.
|
|
1012
|
-
element
|
|
1013
|
-
) as HTMLElement;
|
|
1053
|
+
element = DOMUtilsContext.selector(element) as HTMLElement;
|
|
1014
1054
|
}
|
|
1015
1055
|
if (element == null) {
|
|
1016
1056
|
return;
|
|
@@ -1053,8 +1093,7 @@ class DOMUtils extends DOMUtilsEvent {
|
|
|
1053
1093
|
) {
|
|
1054
1094
|
let DOMUtilsContext = this;
|
|
1055
1095
|
if (typeof element === "string") {
|
|
1056
|
-
element =
|
|
1057
|
-
DOMUtilsContext.windowApi.document.querySelector<HTMLElement>(element)!;
|
|
1096
|
+
element = DOMUtilsContext.selector<HTMLElement>(element)!;
|
|
1058
1097
|
}
|
|
1059
1098
|
if (element == null) {
|
|
1060
1099
|
return;
|
|
@@ -1161,9 +1200,7 @@ class DOMUtils extends DOMUtilsEvent {
|
|
|
1161
1200
|
.clientHeight;
|
|
1162
1201
|
}
|
|
1163
1202
|
if (typeof element === "string") {
|
|
1164
|
-
element = DOMUtilsContext.
|
|
1165
|
-
element
|
|
1166
|
-
) as HTMLElement;
|
|
1203
|
+
element = DOMUtilsContext.selector(element) as HTMLElement;
|
|
1167
1204
|
}
|
|
1168
1205
|
if (element == null) {
|
|
1169
1206
|
// @ts-ignore
|
|
@@ -1261,9 +1298,7 @@ class DOMUtils extends DOMUtilsEvent {
|
|
|
1261
1298
|
return DOMUtilsContext.windowApi.window.innerWidth;
|
|
1262
1299
|
}
|
|
1263
1300
|
if (typeof element === "string") {
|
|
1264
|
-
element = DOMUtilsContext.
|
|
1265
|
-
element
|
|
1266
|
-
) as HTMLElement;
|
|
1301
|
+
element = DOMUtilsContext.selector(element) as HTMLElement;
|
|
1267
1302
|
}
|
|
1268
1303
|
if (element == null) {
|
|
1269
1304
|
// @ts-ignore
|
|
@@ -1312,9 +1347,7 @@ class DOMUtils extends DOMUtilsEvent {
|
|
|
1312
1347
|
return DOMUtilsContext.windowApi.window.innerHeight;
|
|
1313
1348
|
}
|
|
1314
1349
|
if (typeof element === "string") {
|
|
1315
|
-
element = DOMUtilsContext.
|
|
1316
|
-
element
|
|
1317
|
-
) as HTMLElement;
|
|
1350
|
+
element = DOMUtilsContext.selector(element) as HTMLElement;
|
|
1318
1351
|
}
|
|
1319
1352
|
if (element == null) {
|
|
1320
1353
|
// @ts-ignore
|
|
@@ -1469,9 +1502,7 @@ class DOMUtils extends DOMUtilsEvent {
|
|
|
1469
1502
|
prev(element: HTMLElement | string) {
|
|
1470
1503
|
let DOMUtilsContext = this;
|
|
1471
1504
|
if (typeof element === "string") {
|
|
1472
|
-
element = DOMUtilsContext.
|
|
1473
|
-
element
|
|
1474
|
-
) as HTMLElement;
|
|
1505
|
+
element = DOMUtilsContext.selector(element) as HTMLElement;
|
|
1475
1506
|
}
|
|
1476
1507
|
if (element == null) {
|
|
1477
1508
|
return;
|
|
@@ -1493,9 +1524,7 @@ class DOMUtils extends DOMUtilsEvent {
|
|
|
1493
1524
|
next(element: HTMLElement | string) {
|
|
1494
1525
|
let DOMUtilsContext = this;
|
|
1495
1526
|
if (typeof element === "string") {
|
|
1496
|
-
element = DOMUtilsContext.
|
|
1497
|
-
element
|
|
1498
|
-
) as HTMLElement;
|
|
1527
|
+
element = DOMUtilsContext.selector(element) as HTMLElement;
|
|
1499
1528
|
}
|
|
1500
1529
|
if (element == null) {
|
|
1501
1530
|
return;
|
|
@@ -1529,9 +1558,7 @@ class DOMUtils extends DOMUtilsEvent {
|
|
|
1529
1558
|
siblings(element: HTMLElement | string) {
|
|
1530
1559
|
let DOMUtilsContext = this;
|
|
1531
1560
|
if (typeof element === "string") {
|
|
1532
|
-
element = DOMUtilsContext.
|
|
1533
|
-
element
|
|
1534
|
-
) as HTMLElement;
|
|
1561
|
+
element = DOMUtilsContext.selector(element) as HTMLElement;
|
|
1535
1562
|
}
|
|
1536
1563
|
if (element == null) {
|
|
1537
1564
|
return;
|
|
@@ -1576,18 +1603,15 @@ class DOMUtils extends DOMUtilsEvent {
|
|
|
1576
1603
|
parent(element: HTMLElement | NodeList | string | HTMLElement[]) {
|
|
1577
1604
|
let DOMUtilsContext = this;
|
|
1578
1605
|
if (typeof element === "string") {
|
|
1579
|
-
element = DOMUtilsContext.
|
|
1580
|
-
element
|
|
1581
|
-
) as HTMLElement;
|
|
1606
|
+
element = DOMUtilsContext.selector<HTMLElement>(element)!;
|
|
1582
1607
|
}
|
|
1583
1608
|
if (element == null) {
|
|
1584
1609
|
return;
|
|
1585
1610
|
}
|
|
1586
|
-
if (element
|
|
1587
|
-
element = element as HTMLElement[];
|
|
1611
|
+
if (isNodeList(element)) {
|
|
1588
1612
|
let resultArray: HTMLElement[] = [];
|
|
1589
|
-
element.forEach((
|
|
1590
|
-
resultArray.push(DOMUtilsContext.parent(
|
|
1613
|
+
element.forEach(($ele) => {
|
|
1614
|
+
resultArray.push(DOMUtilsContext.parent($ele as HTMLElement));
|
|
1591
1615
|
});
|
|
1592
1616
|
return resultArray;
|
|
1593
1617
|
} else {
|
package/src/DOMUtilsEvent.ts
CHANGED
|
@@ -967,9 +967,7 @@ export class DOMUtilsEvent {
|
|
|
967
967
|
) {
|
|
968
968
|
let DOMUtilsContext = this;
|
|
969
969
|
if (typeof element === "string") {
|
|
970
|
-
element = DOMUtilsContext.
|
|
971
|
-
element
|
|
972
|
-
) as HTMLElement;
|
|
970
|
+
element = DOMUtilsContext.selectorAll(element);
|
|
973
971
|
}
|
|
974
972
|
if (element == null) {
|
|
975
973
|
return;
|
|
@@ -1086,9 +1084,7 @@ export class DOMUtilsEvent {
|
|
|
1086
1084
|
) {
|
|
1087
1085
|
let DOMUtilsContext = this;
|
|
1088
1086
|
if (typeof element === "string") {
|
|
1089
|
-
element = DOMUtilsContext.
|
|
1090
|
-
element
|
|
1091
|
-
) as HTMLElement;
|
|
1087
|
+
element = DOMUtilsContext.selectorAll(element);
|
|
1092
1088
|
}
|
|
1093
1089
|
if (element == null) {
|
|
1094
1090
|
return;
|