@whitesev/domutils 1.2.0 → 1.3.0
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 +155 -115
- package/dist/index.amd.js.map +1 -1
- package/dist/index.cjs.js +155 -115
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +155 -115
- package/dist/index.esm.js.map +1 -1
- package/dist/index.iife.js +155 -115
- package/dist/index.iife.js.map +1 -1
- package/dist/index.system.js +155 -115
- package/dist/index.system.js.map +1 -1
- package/dist/index.umd.js +155 -115
- package/dist/index.umd.js.map +1 -1
- package/dist/types/src/DOMUtils.d.ts +3 -3
- package/dist/types/src/DOMUtilsCommonUtils.d.ts +2 -0
- package/dist/types/src/DOMUtilsEvent.d.ts +4 -2
- package/dist/types/src/WindowApi.d.ts +22 -0
- package/package.json +1 -1
- package/src/DOMUtils.ts +152 -66
- package/src/DOMUtilsCommonUtils.ts +9 -5
- package/src/DOMUtilsEvent.ts +44 -22
- package/src/WindowApi.ts +44 -0
- package/dist/types/src/DOMUtilsCore.d.ts +0 -15
- package/src/DOMUtilsCore.ts +0 -45
package/dist/index.system.js
CHANGED
|
@@ -3,43 +3,12 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
3
3
|
return {
|
|
4
4
|
execute: (function () {
|
|
5
5
|
|
|
6
|
-
const DOMUtilsCoreDefaultEnv = {
|
|
7
|
-
document: document,
|
|
8
|
-
window: window,
|
|
9
|
-
globalThis: globalThis,
|
|
10
|
-
self: self,
|
|
11
|
-
top: top,
|
|
12
|
-
};
|
|
13
|
-
const DOMUtilsCoreEnv = {
|
|
14
|
-
document: document,
|
|
15
|
-
window: window,
|
|
16
|
-
globalThis: globalThis,
|
|
17
|
-
self: self,
|
|
18
|
-
top: top,
|
|
19
|
-
};
|
|
20
|
-
const DOMUtilsCore = {
|
|
21
|
-
init(option) {
|
|
22
|
-
if (!option) {
|
|
23
|
-
option = Object.assign({}, DOMUtilsCoreDefaultEnv);
|
|
24
|
-
}
|
|
25
|
-
Object.assign(DOMUtilsCoreEnv, option);
|
|
26
|
-
},
|
|
27
|
-
get document() {
|
|
28
|
-
return DOMUtilsCoreEnv.document;
|
|
29
|
-
},
|
|
30
|
-
get window() {
|
|
31
|
-
return DOMUtilsCoreEnv.window;
|
|
32
|
-
},
|
|
33
|
-
get globalThis() {
|
|
34
|
-
return DOMUtilsCoreEnv.globalThis;
|
|
35
|
-
},
|
|
36
|
-
get self() {
|
|
37
|
-
return DOMUtilsCoreEnv.self;
|
|
38
|
-
},
|
|
39
|
-
};
|
|
40
|
-
|
|
41
6
|
/** 通用工具类 */
|
|
42
7
|
const DOMUtilsCommonUtils = {
|
|
8
|
+
windowApi: {
|
|
9
|
+
window: window,
|
|
10
|
+
document: document,
|
|
11
|
+
},
|
|
43
12
|
/**
|
|
44
13
|
* 判断元素是否已显示或已连接
|
|
45
14
|
* @param element
|
|
@@ -54,7 +23,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
54
23
|
showElement(element) {
|
|
55
24
|
let dupNode = element.cloneNode(true);
|
|
56
25
|
dupNode.setAttribute("style", "visibility: hidden !important;display:block !important;");
|
|
57
|
-
|
|
26
|
+
this.windowApi.document.documentElement.appendChild(dupNode);
|
|
58
27
|
return {
|
|
59
28
|
/**
|
|
60
29
|
* 恢复修改的style
|
|
@@ -111,13 +80,13 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
111
80
|
if (target === self) {
|
|
112
81
|
return true;
|
|
113
82
|
}
|
|
114
|
-
if (target ===
|
|
83
|
+
if (target === globalThis) {
|
|
115
84
|
return true;
|
|
116
85
|
}
|
|
117
|
-
if (target ===
|
|
86
|
+
if (target === window) {
|
|
118
87
|
return true;
|
|
119
88
|
}
|
|
120
|
-
if (target ===
|
|
89
|
+
if (target === self) {
|
|
121
90
|
return true;
|
|
122
91
|
}
|
|
123
92
|
if (typeof unsafeWindow !== "undefined" && target === unsafeWindow) {
|
|
@@ -155,7 +124,45 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
155
124
|
},
|
|
156
125
|
};
|
|
157
126
|
|
|
127
|
+
class WindowApi {
|
|
128
|
+
/** 默认的配置 */
|
|
129
|
+
defaultApi = {
|
|
130
|
+
document: document,
|
|
131
|
+
window: window,
|
|
132
|
+
globalThis: globalThis,
|
|
133
|
+
self: self,
|
|
134
|
+
top: top,
|
|
135
|
+
};
|
|
136
|
+
/** 使用的配置 */
|
|
137
|
+
api;
|
|
138
|
+
constructor(option) {
|
|
139
|
+
if (!option) {
|
|
140
|
+
option = Object.assign({}, this.defaultApi);
|
|
141
|
+
}
|
|
142
|
+
this.api = Object.assign({}, option);
|
|
143
|
+
}
|
|
144
|
+
get document() {
|
|
145
|
+
return this.api.document;
|
|
146
|
+
}
|
|
147
|
+
get window() {
|
|
148
|
+
return this.api.window;
|
|
149
|
+
}
|
|
150
|
+
get globalThis() {
|
|
151
|
+
return this.api.globalThis;
|
|
152
|
+
}
|
|
153
|
+
get self() {
|
|
154
|
+
return this.api.self;
|
|
155
|
+
}
|
|
156
|
+
get top() {
|
|
157
|
+
return this.api.top;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
|
|
158
161
|
class DOMUtilsEvent {
|
|
162
|
+
windowApi;
|
|
163
|
+
constructor(windowApiOption) {
|
|
164
|
+
this.windowApi = new WindowApi(windowApiOption);
|
|
165
|
+
}
|
|
159
166
|
on(element, eventType, selector, callback, option) {
|
|
160
167
|
/**
|
|
161
168
|
* 获取option配置
|
|
@@ -186,7 +193,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
186
193
|
let DOMUtilsContext = this;
|
|
187
194
|
let args = arguments;
|
|
188
195
|
if (typeof element === "string") {
|
|
189
|
-
element =
|
|
196
|
+
element = DOMUtilsContext.windowApi.document.querySelectorAll(element);
|
|
190
197
|
}
|
|
191
198
|
if (element == null) {
|
|
192
199
|
return;
|
|
@@ -237,7 +244,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
237
244
|
if (_selector_) {
|
|
238
245
|
/* 存在自定义子元素选择器 */
|
|
239
246
|
let totalParent = DOMUtilsCommonUtils.isWin(elementItem)
|
|
240
|
-
?
|
|
247
|
+
? DOMUtilsContext.windowApi.document.documentElement
|
|
241
248
|
: elementItem;
|
|
242
249
|
if (target.matches(_selector_)) {
|
|
243
250
|
/* 当前目标可以被selector所匹配到 */
|
|
@@ -301,9 +308,10 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
301
308
|
}
|
|
302
309
|
return option;
|
|
303
310
|
}
|
|
311
|
+
let DOMUtilsContext = this;
|
|
304
312
|
let args = arguments;
|
|
305
313
|
if (typeof element === "string") {
|
|
306
|
-
element =
|
|
314
|
+
element = DOMUtilsContext.windowApi.document.querySelectorAll(element);
|
|
307
315
|
}
|
|
308
316
|
if (element == null) {
|
|
309
317
|
return;
|
|
@@ -386,8 +394,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
386
394
|
* @param eventType (可选)需要取消监听的事件
|
|
387
395
|
*/
|
|
388
396
|
offAll(element, eventType) {
|
|
397
|
+
let DOMUtilsContext = this;
|
|
389
398
|
if (typeof element === "string") {
|
|
390
|
-
element =
|
|
399
|
+
element = DOMUtilsContext.windowApi.document.querySelectorAll(element);
|
|
391
400
|
}
|
|
392
401
|
if (element == null) {
|
|
393
402
|
return;
|
|
@@ -442,14 +451,16 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
442
451
|
if (typeof callback !== "function") {
|
|
443
452
|
return;
|
|
444
453
|
}
|
|
454
|
+
let DOMUtilsContext = this;
|
|
445
455
|
/**
|
|
446
456
|
* 检测文档是否加载完毕
|
|
447
457
|
*/
|
|
448
458
|
function checkDOMReadyState() {
|
|
449
459
|
try {
|
|
450
|
-
if (
|
|
451
|
-
(
|
|
452
|
-
!
|
|
460
|
+
if (DOMUtilsContext.windowApi.document.readyState === "complete" ||
|
|
461
|
+
(DOMUtilsContext.windowApi.document.readyState !== "loading" &&
|
|
462
|
+
!DOMUtilsContext.windowApi.document.documentElement
|
|
463
|
+
.doScroll)) {
|
|
453
464
|
return true;
|
|
454
465
|
}
|
|
455
466
|
else {
|
|
@@ -469,12 +480,12 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
469
480
|
}
|
|
470
481
|
let targetList = [
|
|
471
482
|
{
|
|
472
|
-
target:
|
|
483
|
+
target: DOMUtilsContext.windowApi.document,
|
|
473
484
|
eventType: "DOMContentLoaded",
|
|
474
485
|
callback: completed,
|
|
475
486
|
},
|
|
476
487
|
{
|
|
477
|
-
target:
|
|
488
|
+
target: DOMUtilsContext.windowApi.window,
|
|
478
489
|
eventType: "load",
|
|
479
490
|
callback: completed,
|
|
480
491
|
},
|
|
@@ -521,8 +532,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
521
532
|
* DOMUtils.trigger("a.xx",["click","tap","hover"])
|
|
522
533
|
*/
|
|
523
534
|
trigger(element, eventType, details, useDispatchToTriggerEvent = true) {
|
|
535
|
+
let DOMUtilsContext = this;
|
|
524
536
|
if (typeof element === "string") {
|
|
525
|
-
element =
|
|
537
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
526
538
|
}
|
|
527
539
|
if (element == null) {
|
|
528
540
|
return;
|
|
@@ -586,7 +598,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
586
598
|
click(element, handler, details, useDispatchToTriggerEvent) {
|
|
587
599
|
let DOMUtilsContext = this;
|
|
588
600
|
if (typeof element === "string") {
|
|
589
|
-
element =
|
|
601
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
590
602
|
}
|
|
591
603
|
if (element == null) {
|
|
592
604
|
return;
|
|
@@ -615,7 +627,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
615
627
|
blur(element, handler, details, useDispatchToTriggerEvent) {
|
|
616
628
|
let DOMUtilsContext = this;
|
|
617
629
|
if (typeof element === "string") {
|
|
618
|
-
element =
|
|
630
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
619
631
|
}
|
|
620
632
|
if (element == null) {
|
|
621
633
|
return;
|
|
@@ -644,7 +656,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
644
656
|
focus(element, handler, details, useDispatchToTriggerEvent) {
|
|
645
657
|
let DOMUtilsContext = this;
|
|
646
658
|
if (typeof element === "string") {
|
|
647
|
-
element =
|
|
659
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
648
660
|
}
|
|
649
661
|
if (element == null) {
|
|
650
662
|
return;
|
|
@@ -673,7 +685,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
673
685
|
hover(element, handler, option) {
|
|
674
686
|
let DOMUtilsContext = this;
|
|
675
687
|
if (typeof element === "string") {
|
|
676
|
-
element =
|
|
688
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
677
689
|
}
|
|
678
690
|
if (element == null) {
|
|
679
691
|
return;
|
|
@@ -702,7 +714,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
702
714
|
return;
|
|
703
715
|
}
|
|
704
716
|
if (typeof target === "string") {
|
|
705
|
-
target =
|
|
717
|
+
target = DOMUtilsContext.windowApi.document.querySelector(target);
|
|
706
718
|
}
|
|
707
719
|
DOMUtilsContext.on(target, "keyup", null, handler, option);
|
|
708
720
|
}
|
|
@@ -727,7 +739,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
727
739
|
return;
|
|
728
740
|
}
|
|
729
741
|
if (typeof target === "string") {
|
|
730
|
-
target =
|
|
742
|
+
target = DOMUtilsContext.windowApi.document.querySelector(target);
|
|
731
743
|
}
|
|
732
744
|
DOMUtilsContext.on(target, "keydown", null, handler, option);
|
|
733
745
|
}
|
|
@@ -752,7 +764,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
752
764
|
return;
|
|
753
765
|
}
|
|
754
766
|
if (typeof target === "string") {
|
|
755
|
-
target =
|
|
767
|
+
target = DOMUtilsContext.windowApi.document.querySelector(target);
|
|
756
768
|
}
|
|
757
769
|
DOMUtilsContext.on(target, "keypress", null, handler, option);
|
|
758
770
|
}
|
|
@@ -760,14 +772,14 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
760
772
|
|
|
761
773
|
class DOMUtils extends DOMUtilsEvent {
|
|
762
774
|
constructor(option) {
|
|
763
|
-
|
|
764
|
-
super();
|
|
775
|
+
super(option);
|
|
765
776
|
}
|
|
766
777
|
/** 版本号 */
|
|
767
|
-
version = "2024.
|
|
778
|
+
version = "2024.7.24";
|
|
768
779
|
attr(element, attrName, attrValue) {
|
|
780
|
+
let DOMUtilsContext = this;
|
|
769
781
|
if (typeof element === "string") {
|
|
770
|
-
element =
|
|
782
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
771
783
|
}
|
|
772
784
|
if (element == null) {
|
|
773
785
|
return;
|
|
@@ -804,7 +816,8 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
804
816
|
property,
|
|
805
817
|
/** 自定义属性 */
|
|
806
818
|
attributes) {
|
|
807
|
-
let
|
|
819
|
+
let DOMUtilsContext = this;
|
|
820
|
+
let tempElement = DOMUtilsContext.windowApi.document.createElement(tagName);
|
|
808
821
|
if (typeof property === "string") {
|
|
809
822
|
tempElement.innerHTML = property;
|
|
810
823
|
return tempElement;
|
|
@@ -834,6 +847,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
834
847
|
return tempElement;
|
|
835
848
|
}
|
|
836
849
|
css(element, property, value) {
|
|
850
|
+
let DOMUtilsContext = this;
|
|
837
851
|
/**
|
|
838
852
|
* 把纯数字没有px的加上
|
|
839
853
|
*/
|
|
@@ -858,7 +872,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
858
872
|
return propertyValue;
|
|
859
873
|
}
|
|
860
874
|
if (typeof element === "string") {
|
|
861
|
-
element =
|
|
875
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
862
876
|
}
|
|
863
877
|
if (element == null) {
|
|
864
878
|
return;
|
|
@@ -891,8 +905,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
891
905
|
}
|
|
892
906
|
}
|
|
893
907
|
text(element, text) {
|
|
908
|
+
let DOMUtilsContext = this;
|
|
894
909
|
if (typeof element === "string") {
|
|
895
|
-
element =
|
|
910
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
896
911
|
}
|
|
897
912
|
if (element == null) {
|
|
898
913
|
return;
|
|
@@ -913,8 +928,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
913
928
|
}
|
|
914
929
|
}
|
|
915
930
|
html(element, html) {
|
|
931
|
+
let DOMUtilsContext = this;
|
|
916
932
|
if (typeof element === "string") {
|
|
917
|
-
element =
|
|
933
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
918
934
|
}
|
|
919
935
|
if (element == null) {
|
|
920
936
|
return;
|
|
@@ -967,8 +983,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
967
983
|
};
|
|
968
984
|
}
|
|
969
985
|
val(element, value) {
|
|
986
|
+
let DOMUtilsContext = this;
|
|
970
987
|
if (typeof element === "string") {
|
|
971
|
-
element =
|
|
988
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
972
989
|
}
|
|
973
990
|
if (element == null) {
|
|
974
991
|
return;
|
|
@@ -993,11 +1010,12 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
993
1010
|
}
|
|
994
1011
|
}
|
|
995
1012
|
prop(element, propName, propValue) {
|
|
1013
|
+
let DOMUtilsContext = this;
|
|
996
1014
|
if (element == null) {
|
|
997
1015
|
return;
|
|
998
1016
|
}
|
|
999
1017
|
if (typeof element === "string") {
|
|
1000
|
-
element =
|
|
1018
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1001
1019
|
}
|
|
1002
1020
|
if (propValue == null) {
|
|
1003
1021
|
return element[propName];
|
|
@@ -1016,8 +1034,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1016
1034
|
* DOMUtils.removeAttr("a.xx","data-value")
|
|
1017
1035
|
* */
|
|
1018
1036
|
removeAttr(element, attrName) {
|
|
1037
|
+
let DOMUtilsContext = this;
|
|
1019
1038
|
if (typeof element === "string") {
|
|
1020
|
-
element =
|
|
1039
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1021
1040
|
}
|
|
1022
1041
|
if (element == null) {
|
|
1023
1042
|
return;
|
|
@@ -1034,8 +1053,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1034
1053
|
* DOMUtils.removeClass("a.xx","xx")
|
|
1035
1054
|
*/
|
|
1036
1055
|
removeClass(element, className) {
|
|
1056
|
+
let DOMUtilsContext = this;
|
|
1037
1057
|
if (typeof element === "string") {
|
|
1038
|
-
element =
|
|
1058
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1039
1059
|
}
|
|
1040
1060
|
if (element == null) {
|
|
1041
1061
|
return;
|
|
@@ -1055,8 +1075,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1055
1075
|
* DOMUtils.removeProp("a.xx","href")
|
|
1056
1076
|
* */
|
|
1057
1077
|
removeProp(element, propName) {
|
|
1078
|
+
let DOMUtilsContext = this;
|
|
1058
1079
|
if (typeof element === "string") {
|
|
1059
|
-
element =
|
|
1080
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1060
1081
|
}
|
|
1061
1082
|
if (element == null) {
|
|
1062
1083
|
return;
|
|
@@ -1075,7 +1096,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1075
1096
|
replaceWith(element, newElement) {
|
|
1076
1097
|
let DOMUtilsContext = this;
|
|
1077
1098
|
if (typeof element === "string") {
|
|
1078
|
-
element =
|
|
1099
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1079
1100
|
}
|
|
1080
1101
|
if (element == null) {
|
|
1081
1102
|
return;
|
|
@@ -1102,8 +1123,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1102
1123
|
* DOMUtils.addClass("a.xx","_vue_")
|
|
1103
1124
|
* */
|
|
1104
1125
|
addClass(element, className) {
|
|
1126
|
+
let DOMUtilsContext = this;
|
|
1105
1127
|
if (typeof element === "string") {
|
|
1106
|
-
element =
|
|
1128
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1107
1129
|
}
|
|
1108
1130
|
if (element == null) {
|
|
1109
1131
|
return;
|
|
@@ -1120,8 +1142,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1120
1142
|
* DOMUtils.append("a.xx","'<b class="xx"></b>")
|
|
1121
1143
|
* */
|
|
1122
1144
|
append(element, content) {
|
|
1145
|
+
let DOMUtilsContext = this;
|
|
1123
1146
|
if (typeof element === "string") {
|
|
1124
|
-
element =
|
|
1147
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1125
1148
|
}
|
|
1126
1149
|
if (element == null) {
|
|
1127
1150
|
return;
|
|
@@ -1136,7 +1159,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1136
1159
|
}
|
|
1137
1160
|
if (Array.isArray(content) || content instanceof NodeList) {
|
|
1138
1161
|
/* 数组 */
|
|
1139
|
-
let fragment =
|
|
1162
|
+
let fragment = DOMUtilsContext.windowApi.document.createDocumentFragment();
|
|
1140
1163
|
content.forEach((ele) => {
|
|
1141
1164
|
if (typeof ele === "string") {
|
|
1142
1165
|
ele = this.parseHTML(ele, true, false);
|
|
@@ -1159,8 +1182,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1159
1182
|
* DOMUtils.prepend("a.xx","'<b class="xx"></b>")
|
|
1160
1183
|
* */
|
|
1161
1184
|
prepend(element, content) {
|
|
1185
|
+
let DOMUtilsContext = this;
|
|
1162
1186
|
if (typeof element === "string") {
|
|
1163
|
-
element =
|
|
1187
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1164
1188
|
}
|
|
1165
1189
|
if (element == null) {
|
|
1166
1190
|
return;
|
|
@@ -1182,8 +1206,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1182
1206
|
* DOMUtils.after("a.xx","'<b class="xx"></b>")
|
|
1183
1207
|
* */
|
|
1184
1208
|
after(element, content) {
|
|
1209
|
+
let DOMUtilsContext = this;
|
|
1185
1210
|
if (typeof element === "string") {
|
|
1186
|
-
element =
|
|
1211
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1187
1212
|
}
|
|
1188
1213
|
if (element == null) {
|
|
1189
1214
|
return;
|
|
@@ -1205,8 +1230,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1205
1230
|
* DOMUtils.before("a.xx","'<b class="xx"></b>")
|
|
1206
1231
|
* */
|
|
1207
1232
|
before(element, content) {
|
|
1233
|
+
let DOMUtilsContext = this;
|
|
1208
1234
|
if (typeof element === "string") {
|
|
1209
|
-
element =
|
|
1235
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1210
1236
|
}
|
|
1211
1237
|
if (element == null) {
|
|
1212
1238
|
return;
|
|
@@ -1230,7 +1256,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1230
1256
|
remove(target) {
|
|
1231
1257
|
let DOMUtilsContext = this;
|
|
1232
1258
|
if (typeof target === "string") {
|
|
1233
|
-
target =
|
|
1259
|
+
target = DOMUtilsContext.windowApi.document.querySelectorAll(target);
|
|
1234
1260
|
}
|
|
1235
1261
|
if (target == null) {
|
|
1236
1262
|
return;
|
|
@@ -1254,8 +1280,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1254
1280
|
* DOMUtils.empty("a.xx")
|
|
1255
1281
|
* */
|
|
1256
1282
|
empty(element) {
|
|
1283
|
+
let DOMUtilsContext = this;
|
|
1257
1284
|
if (typeof element === "string") {
|
|
1258
|
-
element =
|
|
1285
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1259
1286
|
}
|
|
1260
1287
|
if (element == null) {
|
|
1261
1288
|
return;
|
|
@@ -1272,8 +1299,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1272
1299
|
* > 0
|
|
1273
1300
|
*/
|
|
1274
1301
|
offset(element) {
|
|
1302
|
+
let DOMUtilsContext = this;
|
|
1275
1303
|
if (typeof element === "string") {
|
|
1276
|
-
element =
|
|
1304
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1277
1305
|
}
|
|
1278
1306
|
if (element == null) {
|
|
1279
1307
|
return;
|
|
@@ -1281,21 +1309,22 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1281
1309
|
let rect = element.getBoundingClientRect();
|
|
1282
1310
|
return {
|
|
1283
1311
|
/** y轴偏移 */
|
|
1284
|
-
top: rect.top +
|
|
1312
|
+
top: rect.top + DOMUtilsContext.windowApi.globalThis.scrollY,
|
|
1285
1313
|
/** x轴偏移 */
|
|
1286
|
-
left: rect.left +
|
|
1314
|
+
left: rect.left + DOMUtilsContext.windowApi.globalThis.scrollX,
|
|
1287
1315
|
};
|
|
1288
1316
|
}
|
|
1289
1317
|
width(element, isShow = false) {
|
|
1290
1318
|
let DOMUtilsContext = this;
|
|
1291
1319
|
if (typeof element === "string") {
|
|
1292
|
-
element =
|
|
1320
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1293
1321
|
}
|
|
1294
1322
|
if (element == null) {
|
|
1295
1323
|
return;
|
|
1296
1324
|
}
|
|
1297
1325
|
if (DOMUtilsCommonUtils.isWin(element)) {
|
|
1298
|
-
return
|
|
1326
|
+
return DOMUtilsContext.windowApi.window.document.documentElement
|
|
1327
|
+
.clientWidth;
|
|
1299
1328
|
}
|
|
1300
1329
|
if (element.nodeType === 9) {
|
|
1301
1330
|
/* Document文档节点 */
|
|
@@ -1338,10 +1367,11 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1338
1367
|
height(element, isShow = false) {
|
|
1339
1368
|
let DOMUtilsContext = this;
|
|
1340
1369
|
if (DOMUtilsCommonUtils.isWin(element)) {
|
|
1341
|
-
return
|
|
1370
|
+
return DOMUtilsContext.windowApi.window.document.documentElement
|
|
1371
|
+
.clientHeight;
|
|
1342
1372
|
}
|
|
1343
1373
|
if (typeof element === "string") {
|
|
1344
|
-
element =
|
|
1374
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1345
1375
|
}
|
|
1346
1376
|
if (element == null) {
|
|
1347
1377
|
// @ts-ignore
|
|
@@ -1388,10 +1418,10 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1388
1418
|
outerWidth(element, isShow = false) {
|
|
1389
1419
|
let DOMUtilsContext = this;
|
|
1390
1420
|
if (DOMUtilsCommonUtils.isWin(element)) {
|
|
1391
|
-
return
|
|
1421
|
+
return DOMUtilsContext.windowApi.window.innerWidth;
|
|
1392
1422
|
}
|
|
1393
1423
|
if (typeof element === "string") {
|
|
1394
|
-
element =
|
|
1424
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1395
1425
|
}
|
|
1396
1426
|
if (element == null) {
|
|
1397
1427
|
// @ts-ignore
|
|
@@ -1414,10 +1444,10 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1414
1444
|
outerHeight(element, isShow = false) {
|
|
1415
1445
|
let DOMUtilsContext = this;
|
|
1416
1446
|
if (DOMUtilsCommonUtils.isWin(element)) {
|
|
1417
|
-
return
|
|
1447
|
+
return DOMUtilsContext.windowApi.window.innerHeight;
|
|
1418
1448
|
}
|
|
1419
1449
|
if (typeof element === "string") {
|
|
1420
|
-
element =
|
|
1450
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1421
1451
|
}
|
|
1422
1452
|
if (element == null) {
|
|
1423
1453
|
// @ts-ignore
|
|
@@ -1450,8 +1480,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1450
1480
|
* })
|
|
1451
1481
|
*/
|
|
1452
1482
|
animate(element, styles, duration = 1000, callback = null) {
|
|
1483
|
+
let DOMUtilsContext = this;
|
|
1453
1484
|
if (typeof element === "string") {
|
|
1454
|
-
element =
|
|
1485
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1455
1486
|
}
|
|
1456
1487
|
if (element == null) {
|
|
1457
1488
|
return;
|
|
@@ -1502,15 +1533,16 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1502
1533
|
* DOMUtils.wrap(document.querySelector("a.xx"),"<div></div>")
|
|
1503
1534
|
*/
|
|
1504
1535
|
wrap(element, wrapperHTML) {
|
|
1536
|
+
let DOMUtilsContext = this;
|
|
1505
1537
|
if (typeof element === "string") {
|
|
1506
|
-
element =
|
|
1538
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1507
1539
|
}
|
|
1508
1540
|
if (element == null) {
|
|
1509
1541
|
return;
|
|
1510
1542
|
}
|
|
1511
1543
|
element = element;
|
|
1512
1544
|
// 创建一个新的div元素,并将wrapperHTML作为其innerHTML
|
|
1513
|
-
let wrapper =
|
|
1545
|
+
let wrapper = DOMUtilsContext.windowApi.document.createElement("div");
|
|
1514
1546
|
wrapper.innerHTML = wrapperHTML;
|
|
1515
1547
|
let wrapperFirstChild = wrapper.firstChild;
|
|
1516
1548
|
// 将要包裹的元素插入目标元素前面
|
|
@@ -1519,8 +1551,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1519
1551
|
wrapperFirstChild.appendChild(element);
|
|
1520
1552
|
}
|
|
1521
1553
|
prev(element) {
|
|
1554
|
+
let DOMUtilsContext = this;
|
|
1522
1555
|
if (typeof element === "string") {
|
|
1523
|
-
element =
|
|
1556
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1524
1557
|
}
|
|
1525
1558
|
if (element == null) {
|
|
1526
1559
|
return;
|
|
@@ -1528,8 +1561,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1528
1561
|
return element.previousElementSibling;
|
|
1529
1562
|
}
|
|
1530
1563
|
next(element) {
|
|
1564
|
+
let DOMUtilsContext = this;
|
|
1531
1565
|
if (typeof element === "string") {
|
|
1532
|
-
element =
|
|
1566
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1533
1567
|
}
|
|
1534
1568
|
if (element == null) {
|
|
1535
1569
|
return;
|
|
@@ -1542,15 +1576,17 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1542
1576
|
* let DOMUtils = window.DOMUtils.noConflict()
|
|
1543
1577
|
*/
|
|
1544
1578
|
noConflict() {
|
|
1545
|
-
|
|
1579
|
+
let DOMUtilsContext = this;
|
|
1580
|
+
if (DOMUtilsContext.windowApi.window.DOMUtils) {
|
|
1546
1581
|
DOMUtilsCommonUtils.delete(window, "DOMUtils");
|
|
1547
1582
|
}
|
|
1548
|
-
|
|
1583
|
+
DOMUtilsContext.windowApi.window.DOMUtils = this;
|
|
1549
1584
|
return this;
|
|
1550
1585
|
}
|
|
1551
1586
|
siblings(element) {
|
|
1587
|
+
let DOMUtilsContext = this;
|
|
1552
1588
|
if (typeof element === "string") {
|
|
1553
|
-
element =
|
|
1589
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1554
1590
|
}
|
|
1555
1591
|
if (element == null) {
|
|
1556
1592
|
return;
|
|
@@ -1571,7 +1607,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1571
1607
|
parent(element) {
|
|
1572
1608
|
let DOMUtilsContext = this;
|
|
1573
1609
|
if (typeof element === "string") {
|
|
1574
|
-
element =
|
|
1610
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1575
1611
|
}
|
|
1576
1612
|
if (element == null) {
|
|
1577
1613
|
return;
|
|
@@ -1589,6 +1625,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1589
1625
|
}
|
|
1590
1626
|
}
|
|
1591
1627
|
parseHTML(html, useParser = false, isComplete = false) {
|
|
1628
|
+
let DOMUtilsContext = this;
|
|
1592
1629
|
function parseHTMLByDOMParser() {
|
|
1593
1630
|
let parser = new DOMParser();
|
|
1594
1631
|
if (isComplete) {
|
|
@@ -1599,7 +1636,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1599
1636
|
}
|
|
1600
1637
|
}
|
|
1601
1638
|
function parseHTMLByCreateDom() {
|
|
1602
|
-
let tempDIV =
|
|
1639
|
+
let tempDIV = DOMUtilsContext.windowApi.document.createElement("div");
|
|
1603
1640
|
tempDIV.innerHTML = html;
|
|
1604
1641
|
if (isComplete) {
|
|
1605
1642
|
return tempDIV;
|
|
@@ -1630,7 +1667,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1630
1667
|
return;
|
|
1631
1668
|
}
|
|
1632
1669
|
if (typeof target === "string") {
|
|
1633
|
-
target =
|
|
1670
|
+
target = DOMUtilsContext.windowApi.document.querySelectorAll(target);
|
|
1634
1671
|
}
|
|
1635
1672
|
if (target instanceof NodeList || target instanceof Array) {
|
|
1636
1673
|
target = target;
|
|
@@ -1662,7 +1699,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1662
1699
|
return;
|
|
1663
1700
|
}
|
|
1664
1701
|
if (typeof target === "string") {
|
|
1665
|
-
target =
|
|
1702
|
+
target = DOMUtilsContext.windowApi.document.querySelectorAll(target);
|
|
1666
1703
|
}
|
|
1667
1704
|
if (target instanceof NodeList || target instanceof Array) {
|
|
1668
1705
|
target = target;
|
|
@@ -1697,8 +1734,9 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1697
1734
|
if (element == null) {
|
|
1698
1735
|
return;
|
|
1699
1736
|
}
|
|
1737
|
+
let DOMUtilsContext = this;
|
|
1700
1738
|
if (typeof element === "string") {
|
|
1701
|
-
element =
|
|
1739
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1702
1740
|
}
|
|
1703
1741
|
element = element;
|
|
1704
1742
|
element.style.opacity = "0";
|
|
@@ -1712,16 +1750,16 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1712
1750
|
element = element;
|
|
1713
1751
|
element.style.opacity = Math.min(progress / duration, 1).toString();
|
|
1714
1752
|
if (progress < duration) {
|
|
1715
|
-
|
|
1753
|
+
DOMUtilsContext.windowApi.window.requestAnimationFrame(step);
|
|
1716
1754
|
}
|
|
1717
1755
|
else {
|
|
1718
1756
|
if (callback && typeof callback === "function") {
|
|
1719
1757
|
callback();
|
|
1720
1758
|
}
|
|
1721
|
-
|
|
1759
|
+
DOMUtilsContext.windowApi.window.cancelAnimationFrame(timer);
|
|
1722
1760
|
}
|
|
1723
1761
|
}
|
|
1724
|
-
timer =
|
|
1762
|
+
timer = DOMUtilsContext.windowApi.window.requestAnimationFrame(step);
|
|
1725
1763
|
}
|
|
1726
1764
|
/**
|
|
1727
1765
|
* 淡出元素
|
|
@@ -1738,11 +1776,12 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1738
1776
|
* })
|
|
1739
1777
|
*/
|
|
1740
1778
|
fadeOut(element, duration = 400, callback) {
|
|
1779
|
+
let DOMUtilsContext = this;
|
|
1741
1780
|
if (element == null) {
|
|
1742
1781
|
return;
|
|
1743
1782
|
}
|
|
1744
1783
|
if (typeof element === "string") {
|
|
1745
|
-
element =
|
|
1784
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1746
1785
|
}
|
|
1747
1786
|
element = element;
|
|
1748
1787
|
element.style.opacity = "1";
|
|
@@ -1755,17 +1794,17 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1755
1794
|
element = element;
|
|
1756
1795
|
element.style.opacity = Math.max(1 - progress / duration, 0).toString();
|
|
1757
1796
|
if (progress < duration) {
|
|
1758
|
-
|
|
1797
|
+
DOMUtilsContext.windowApi.window.requestAnimationFrame(step);
|
|
1759
1798
|
}
|
|
1760
1799
|
else {
|
|
1761
1800
|
element.style.display = "none";
|
|
1762
1801
|
if (typeof callback === "function") {
|
|
1763
1802
|
callback();
|
|
1764
1803
|
}
|
|
1765
|
-
|
|
1804
|
+
DOMUtilsContext.windowApi.window.cancelAnimationFrame(timer);
|
|
1766
1805
|
}
|
|
1767
1806
|
}
|
|
1768
|
-
timer =
|
|
1807
|
+
timer = DOMUtilsContext.windowApi.window.requestAnimationFrame(step);
|
|
1769
1808
|
}
|
|
1770
1809
|
/**
|
|
1771
1810
|
* 切换元素的显示和隐藏状态
|
|
@@ -1778,7 +1817,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1778
1817
|
toggle(element) {
|
|
1779
1818
|
let DOMUtilsContext = this;
|
|
1780
1819
|
if (typeof element === "string") {
|
|
1781
|
-
element =
|
|
1820
|
+
element = DOMUtilsContext.windowApi.document.querySelector(element);
|
|
1782
1821
|
}
|
|
1783
1822
|
if (element == null) {
|
|
1784
1823
|
return;
|
|
@@ -1807,6 +1846,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1807
1846
|
* DOMUtils.getTextBoundingRect(document.querySelector("input"));
|
|
1808
1847
|
*/
|
|
1809
1848
|
getTextBoundingRect($input, selectionStart, selectionEnd) {
|
|
1849
|
+
let DOMUtilsContext = this;
|
|
1810
1850
|
// Basic parameter validation
|
|
1811
1851
|
if (!$input || !("value" in $input))
|
|
1812
1852
|
return $input;
|
|
@@ -1876,7 +1916,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1876
1916
|
}
|
|
1877
1917
|
// End of CSS variable checks
|
|
1878
1918
|
// 不能为空,不然获取不到高度
|
|
1879
|
-
let text = $input.value || "G", textLen = text.length, fakeClone =
|
|
1919
|
+
let text = $input.value || "G", textLen = text.length, fakeClone = DOMUtilsContext.windowApi.document.createElement("div");
|
|
1880
1920
|
if (selectionStart > 0)
|
|
1881
1921
|
appendPart(0, selectionStart);
|
|
1882
1922
|
var fakeRange = appendPart(selectionStart, selectionEnd);
|
|
@@ -1890,7 +1930,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1890
1930
|
fakeClone.style.left = leftPos + "px";
|
|
1891
1931
|
fakeClone.style.width = width + "px";
|
|
1892
1932
|
fakeClone.style.height = height + "px";
|
|
1893
|
-
|
|
1933
|
+
DOMUtilsContext.windowApi.document.body.appendChild(fakeClone);
|
|
1894
1934
|
var returnValue = fakeRange.getBoundingClientRect(); //Get rect
|
|
1895
1935
|
fakeClone?.parentNode?.removeChild(fakeClone); //Remove temp
|
|
1896
1936
|
return returnValue;
|
|
@@ -1902,7 +1942,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1902
1942
|
* @returns
|
|
1903
1943
|
*/
|
|
1904
1944
|
function appendPart(start, end) {
|
|
1905
|
-
var span =
|
|
1945
|
+
var span = DOMUtilsContext.windowApi.document.createElement("span");
|
|
1906
1946
|
span.style.cssText = cssDefaultStyles; //Force styles to prevent unexpected results
|
|
1907
1947
|
span.textContent = text.substring(start, end);
|
|
1908
1948
|
fakeClone.appendChild(span);
|
|
@@ -1910,7 +1950,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1910
1950
|
}
|
|
1911
1951
|
// Computing offset position
|
|
1912
1952
|
function getInputOffset() {
|
|
1913
|
-
let body =
|
|
1953
|
+
let body = DOMUtilsContext.windowApi.document.body, win = DOMUtilsContext.windowApi.document.defaultView, docElem = DOMUtilsContext.windowApi.document.documentElement, $box = DOMUtilsContext.windowApi.document.createElement("div");
|
|
1914
1954
|
$box.style.paddingLeft = $box.style.width = "1px";
|
|
1915
1955
|
body.appendChild($box);
|
|
1916
1956
|
var isBoxModel = $box.offsetWidth == 2;
|
|
@@ -1933,7 +1973,7 @@ System.register('DOMUtils', [], (function (exports) {
|
|
|
1933
1973
|
* @returns
|
|
1934
1974
|
*/
|
|
1935
1975
|
function getInputCSS(prop, isNumber) {
|
|
1936
|
-
var val =
|
|
1976
|
+
var val = DOMUtilsContext.windowApi.document
|
|
1937
1977
|
.defaultView.getComputedStyle($input, null)
|
|
1938
1978
|
.getPropertyValue(prop);
|
|
1939
1979
|
return isNumber ? parseFloat(val) : val;
|