@whitesev/domutils 1.2.0 → 1.3.1

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.
@@ -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
- DOMUtilsCore.document.documentElement.appendChild(dupNode);
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 === DOMUtilsCore.globalThis) {
83
+ if (target === globalThis) {
115
84
  return true;
116
85
  }
117
- if (target === DOMUtilsCore.window) {
86
+ if (target === window) {
118
87
  return true;
119
88
  }
120
- if (target === DOMUtilsCore.self) {
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 = DOMUtilsCore.document.querySelectorAll(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
- ? DOMUtilsCore.document.documentElement
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 = DOMUtilsCore.document.querySelectorAll(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 = DOMUtilsCore.document.querySelectorAll(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 (DOMUtilsCore.document.readyState === "complete" ||
451
- (DOMUtilsCore.document.readyState !== "loading" &&
452
- !DOMUtilsCore.document.documentElement.doScroll)) {
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: DOMUtilsCore.document,
483
+ target: DOMUtilsContext.windowApi.document,
473
484
  eventType: "DOMContentLoaded",
474
485
  callback: completed,
475
486
  },
476
487
  {
477
- target: DOMUtilsCore.window,
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 = DOMUtilsCore.document.querySelector(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 = DOMUtilsCore.document.querySelector(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 = DOMUtilsCore.document.querySelector(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 = DOMUtilsCore.document.querySelector(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 = DOMUtilsCore.document.querySelector(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 = DOMUtilsCore.document.querySelector(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 = DOMUtilsCore.document.querySelector(target);
742
+ target = DOMUtilsContext.windowApi.document.querySelector(target);
731
743
  }
732
744
  DOMUtilsContext.on(target, "keydown", null, handler, option);
733
745
  }
@@ -752,22 +764,113 @@ System.register('DOMUtils', [], (function (exports) {
752
764
  return;
753
765
  }
754
766
  if (typeof target === "string") {
755
- target = DOMUtilsCore.document.querySelector(target);
767
+ target = DOMUtilsContext.windowApi.document.querySelector(target);
756
768
  }
757
769
  DOMUtilsContext.on(target, "keypress", null, handler, option);
758
770
  }
771
+ /**
772
+ * 监听某个元素键盘按键事件或window全局按键事件
773
+ * 按下有值的键时触发,按下Ctrl\Alt\Shift\Meta是无值键。按下先触发keydown事件,再触发keypress事件。
774
+ * @param target 需要监听的对象,可以是全局Window或者某个元素
775
+ * @param eventName 事件名,默认keypress
776
+ * @param callback 自己定义的回调事件,参数1为当前的key,参数2为组合按键,数组类型,包含ctrl、shift、alt和meta(win键或mac的cmd键)
777
+ * @param options 监听事件的配置
778
+ * @example
779
+ Utils.listenKeyboard(window,(keyName,keyValue,otherKey,event)=>{
780
+ if(keyName === "Enter"){
781
+ console.log("回车按键的值是:"+keyValue)
782
+ }
783
+ if(otherKey.indexOf("ctrl") && keyName === "Enter" ){
784
+ console.log("Ctrl和回车键");
785
+ }
786
+ })
787
+ * @example
788
+ 字母和数字键的键码值(keyCode)
789
+ 按键 键码 按键 键码 按键 键码 按键 键码
790
+ A 65 J 74 S 83 1 49
791
+ B 66 K 75 T 84 2 50
792
+ C 67 L 76 U 85 3 51
793
+ D 68 M 77 V 86 4 52
794
+ E 69 N 78 W 87 5 53
795
+ F 70 O 79 X 88 6 54
796
+ G 71 P 80 Y 89 7 55
797
+ H 72 Q 81 Z 90 8 56
798
+ I 73 R 82 0 48 9 57
799
+
800
+ 数字键盘上的键的键码值(keyCode)
801
+ 功能键键码值(keyCode)
802
+ 按键 键码 按键 键码 按键 键码 按键 键码
803
+ 0 96 8 104 F1 112 F7 118
804
+ 1 97 9 105 F2 113 F8 119
805
+ 2 98 * 106 F3 114 F9 120
806
+ 3 99 + 107 F4 115 F10 121
807
+ 4 100 Enter 108 F5 116 F11 122
808
+ 5 101 - 109 F6 117 F12 123
809
+ 6 102 . 110
810
+ 7 103 / 111
811
+
812
+ 控制键键码值(keyCode)
813
+ 按键 键码 按键 键码 按键 键码 按键 键码
814
+ BackSpace 8 Esc 27 → 39 -_ 189
815
+ Tab 9 Spacebar 32 ↓ 40 .> 190
816
+ Clear 12 Page Up 33 Insert 45 /? 191
817
+ Enter 13 Page Down 34 Delete 46 `~ 192
818
+ Shift 16 End 35 Num Lock 144 [{ 219
819
+ Control 17 Home 36 ;: 186 \| 220
820
+ Alt 18 ← 37 =+ 187 ]} 221
821
+ Cape Lock 20 ↑ 38 ,< 188 '" 222
822
+
823
+ 多媒体键码值(keyCode)
824
+ 按键 键码
825
+ 音量加 175
826
+ 音量减 174
827
+ 停止 179
828
+ 静音 173
829
+ 浏览器 172
830
+ 邮件 180
831
+ 搜索 170
832
+ 收藏 171
833
+ **/
834
+ listenKeyboard(target, eventName = "keypress", callback, options) {
835
+ let keyboardEventCallBack = function (event) {
836
+ let keyName = event.key || event.code;
837
+ let keyValue = event.charCode || event.keyCode || event.which;
838
+ let otherCodeList = [];
839
+ if (event.ctrlKey) {
840
+ otherCodeList.push("ctrl");
841
+ }
842
+ if (event.altKey) {
843
+ otherCodeList.push("alt");
844
+ }
845
+ if (event.metaKey) {
846
+ otherCodeList.push("meta");
847
+ }
848
+ if (event.shiftKey) {
849
+ otherCodeList.push("shift");
850
+ }
851
+ if (typeof callback === "function") {
852
+ callback(keyName, keyValue.toString(), otherCodeList, event);
853
+ }
854
+ };
855
+ this.on(target, eventName, keyboardEventCallBack, options);
856
+ return {
857
+ removeListen: () => {
858
+ this.off(target, eventName, keyboardEventCallBack, options);
859
+ },
860
+ };
861
+ }
759
862
  }
760
863
 
761
864
  class DOMUtils extends DOMUtilsEvent {
762
865
  constructor(option) {
763
- DOMUtilsCore.init(option);
764
- super();
866
+ super(option);
765
867
  }
766
868
  /** 版本号 */
767
- version = "2024.6.21";
869
+ version = "2024.8.30";
768
870
  attr(element, attrName, attrValue) {
871
+ let DOMUtilsContext = this;
769
872
  if (typeof element === "string") {
770
- element = DOMUtilsCore.document.querySelector(element);
873
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
771
874
  }
772
875
  if (element == null) {
773
876
  return;
@@ -804,7 +907,8 @@ System.register('DOMUtils', [], (function (exports) {
804
907
  property,
805
908
  /** 自定义属性 */
806
909
  attributes) {
807
- let tempElement = DOMUtilsCore.document.createElement(tagName);
910
+ let DOMUtilsContext = this;
911
+ let tempElement = DOMUtilsContext.windowApi.document.createElement(tagName);
808
912
  if (typeof property === "string") {
809
913
  tempElement.innerHTML = property;
810
914
  return tempElement;
@@ -834,6 +938,7 @@ System.register('DOMUtils', [], (function (exports) {
834
938
  return tempElement;
835
939
  }
836
940
  css(element, property, value) {
941
+ let DOMUtilsContext = this;
837
942
  /**
838
943
  * 把纯数字没有px的加上
839
944
  */
@@ -858,7 +963,7 @@ System.register('DOMUtils', [], (function (exports) {
858
963
  return propertyValue;
859
964
  }
860
965
  if (typeof element === "string") {
861
- element = DOMUtilsCore.document.querySelector(element);
966
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
862
967
  }
863
968
  if (element == null) {
864
969
  return;
@@ -891,8 +996,9 @@ System.register('DOMUtils', [], (function (exports) {
891
996
  }
892
997
  }
893
998
  text(element, text) {
999
+ let DOMUtilsContext = this;
894
1000
  if (typeof element === "string") {
895
- element = DOMUtilsCore.document.querySelector(element);
1001
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
896
1002
  }
897
1003
  if (element == null) {
898
1004
  return;
@@ -913,8 +1019,9 @@ System.register('DOMUtils', [], (function (exports) {
913
1019
  }
914
1020
  }
915
1021
  html(element, html) {
1022
+ let DOMUtilsContext = this;
916
1023
  if (typeof element === "string") {
917
- element = DOMUtilsCore.document.querySelector(element);
1024
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
918
1025
  }
919
1026
  if (element == null) {
920
1027
  return;
@@ -967,8 +1074,9 @@ System.register('DOMUtils', [], (function (exports) {
967
1074
  };
968
1075
  }
969
1076
  val(element, value) {
1077
+ let DOMUtilsContext = this;
970
1078
  if (typeof element === "string") {
971
- element = DOMUtilsCore.document.querySelector(element);
1079
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
972
1080
  }
973
1081
  if (element == null) {
974
1082
  return;
@@ -993,11 +1101,12 @@ System.register('DOMUtils', [], (function (exports) {
993
1101
  }
994
1102
  }
995
1103
  prop(element, propName, propValue) {
1104
+ let DOMUtilsContext = this;
996
1105
  if (element == null) {
997
1106
  return;
998
1107
  }
999
1108
  if (typeof element === "string") {
1000
- element = DOMUtilsCore.document.querySelector(element);
1109
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1001
1110
  }
1002
1111
  if (propValue == null) {
1003
1112
  return element[propName];
@@ -1016,8 +1125,9 @@ System.register('DOMUtils', [], (function (exports) {
1016
1125
  * DOMUtils.removeAttr("a.xx","data-value")
1017
1126
  * */
1018
1127
  removeAttr(element, attrName) {
1128
+ let DOMUtilsContext = this;
1019
1129
  if (typeof element === "string") {
1020
- element = DOMUtilsCore.document.querySelector(element);
1130
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1021
1131
  }
1022
1132
  if (element == null) {
1023
1133
  return;
@@ -1034,8 +1144,9 @@ System.register('DOMUtils', [], (function (exports) {
1034
1144
  * DOMUtils.removeClass("a.xx","xx")
1035
1145
  */
1036
1146
  removeClass(element, className) {
1147
+ let DOMUtilsContext = this;
1037
1148
  if (typeof element === "string") {
1038
- element = DOMUtilsCore.document.querySelector(element);
1149
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1039
1150
  }
1040
1151
  if (element == null) {
1041
1152
  return;
@@ -1055,8 +1166,9 @@ System.register('DOMUtils', [], (function (exports) {
1055
1166
  * DOMUtils.removeProp("a.xx","href")
1056
1167
  * */
1057
1168
  removeProp(element, propName) {
1169
+ let DOMUtilsContext = this;
1058
1170
  if (typeof element === "string") {
1059
- element = DOMUtilsCore.document.querySelector(element);
1171
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1060
1172
  }
1061
1173
  if (element == null) {
1062
1174
  return;
@@ -1075,7 +1187,7 @@ System.register('DOMUtils', [], (function (exports) {
1075
1187
  replaceWith(element, newElement) {
1076
1188
  let DOMUtilsContext = this;
1077
1189
  if (typeof element === "string") {
1078
- element = DOMUtilsCore.document.querySelector(element);
1190
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1079
1191
  }
1080
1192
  if (element == null) {
1081
1193
  return;
@@ -1102,8 +1214,9 @@ System.register('DOMUtils', [], (function (exports) {
1102
1214
  * DOMUtils.addClass("a.xx","_vue_")
1103
1215
  * */
1104
1216
  addClass(element, className) {
1217
+ let DOMUtilsContext = this;
1105
1218
  if (typeof element === "string") {
1106
- element = DOMUtilsCore.document.querySelector(element);
1219
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1107
1220
  }
1108
1221
  if (element == null) {
1109
1222
  return;
@@ -1120,8 +1233,9 @@ System.register('DOMUtils', [], (function (exports) {
1120
1233
  * DOMUtils.append("a.xx","'<b class="xx"></b>")
1121
1234
  * */
1122
1235
  append(element, content) {
1236
+ let DOMUtilsContext = this;
1123
1237
  if (typeof element === "string") {
1124
- element = DOMUtilsCore.document.querySelector(element);
1238
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1125
1239
  }
1126
1240
  if (element == null) {
1127
1241
  return;
@@ -1136,7 +1250,7 @@ System.register('DOMUtils', [], (function (exports) {
1136
1250
  }
1137
1251
  if (Array.isArray(content) || content instanceof NodeList) {
1138
1252
  /* 数组 */
1139
- let fragment = DOMUtilsCore.document.createDocumentFragment();
1253
+ let fragment = DOMUtilsContext.windowApi.document.createDocumentFragment();
1140
1254
  content.forEach((ele) => {
1141
1255
  if (typeof ele === "string") {
1142
1256
  ele = this.parseHTML(ele, true, false);
@@ -1159,8 +1273,9 @@ System.register('DOMUtils', [], (function (exports) {
1159
1273
  * DOMUtils.prepend("a.xx","'<b class="xx"></b>")
1160
1274
  * */
1161
1275
  prepend(element, content) {
1276
+ let DOMUtilsContext = this;
1162
1277
  if (typeof element === "string") {
1163
- element = DOMUtilsCore.document.querySelector(element);
1278
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1164
1279
  }
1165
1280
  if (element == null) {
1166
1281
  return;
@@ -1182,8 +1297,9 @@ System.register('DOMUtils', [], (function (exports) {
1182
1297
  * DOMUtils.after("a.xx","'<b class="xx"></b>")
1183
1298
  * */
1184
1299
  after(element, content) {
1300
+ let DOMUtilsContext = this;
1185
1301
  if (typeof element === "string") {
1186
- element = DOMUtilsCore.document.querySelector(element);
1302
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1187
1303
  }
1188
1304
  if (element == null) {
1189
1305
  return;
@@ -1205,8 +1321,9 @@ System.register('DOMUtils', [], (function (exports) {
1205
1321
  * DOMUtils.before("a.xx","'<b class="xx"></b>")
1206
1322
  * */
1207
1323
  before(element, content) {
1324
+ let DOMUtilsContext = this;
1208
1325
  if (typeof element === "string") {
1209
- element = DOMUtilsCore.document.querySelector(element);
1326
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1210
1327
  }
1211
1328
  if (element == null) {
1212
1329
  return;
@@ -1230,7 +1347,7 @@ System.register('DOMUtils', [], (function (exports) {
1230
1347
  remove(target) {
1231
1348
  let DOMUtilsContext = this;
1232
1349
  if (typeof target === "string") {
1233
- target = DOMUtilsCore.document.querySelectorAll(target);
1350
+ target = DOMUtilsContext.windowApi.document.querySelectorAll(target);
1234
1351
  }
1235
1352
  if (target == null) {
1236
1353
  return;
@@ -1254,8 +1371,9 @@ System.register('DOMUtils', [], (function (exports) {
1254
1371
  * DOMUtils.empty("a.xx")
1255
1372
  * */
1256
1373
  empty(element) {
1374
+ let DOMUtilsContext = this;
1257
1375
  if (typeof element === "string") {
1258
- element = DOMUtilsCore.document.querySelector(element);
1376
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1259
1377
  }
1260
1378
  if (element == null) {
1261
1379
  return;
@@ -1272,8 +1390,9 @@ System.register('DOMUtils', [], (function (exports) {
1272
1390
  * > 0
1273
1391
  */
1274
1392
  offset(element) {
1393
+ let DOMUtilsContext = this;
1275
1394
  if (typeof element === "string") {
1276
- element = DOMUtilsCore.document.querySelector(element);
1395
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1277
1396
  }
1278
1397
  if (element == null) {
1279
1398
  return;
@@ -1281,21 +1400,22 @@ System.register('DOMUtils', [], (function (exports) {
1281
1400
  let rect = element.getBoundingClientRect();
1282
1401
  return {
1283
1402
  /** y轴偏移 */
1284
- top: rect.top + DOMUtilsCore.globalThis.scrollY,
1403
+ top: rect.top + DOMUtilsContext.windowApi.globalThis.scrollY,
1285
1404
  /** x轴偏移 */
1286
- left: rect.left + DOMUtilsCore.globalThis.scrollX,
1405
+ left: rect.left + DOMUtilsContext.windowApi.globalThis.scrollX,
1287
1406
  };
1288
1407
  }
1289
1408
  width(element, isShow = false) {
1290
1409
  let DOMUtilsContext = this;
1291
1410
  if (typeof element === "string") {
1292
- element = DOMUtilsCore.document.querySelector(element);
1411
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1293
1412
  }
1294
1413
  if (element == null) {
1295
1414
  return;
1296
1415
  }
1297
1416
  if (DOMUtilsCommonUtils.isWin(element)) {
1298
- return DOMUtilsCore.window.document.documentElement.clientWidth;
1417
+ return DOMUtilsContext.windowApi.window.document.documentElement
1418
+ .clientWidth;
1299
1419
  }
1300
1420
  if (element.nodeType === 9) {
1301
1421
  /* Document文档节点 */
@@ -1338,10 +1458,11 @@ System.register('DOMUtils', [], (function (exports) {
1338
1458
  height(element, isShow = false) {
1339
1459
  let DOMUtilsContext = this;
1340
1460
  if (DOMUtilsCommonUtils.isWin(element)) {
1341
- return DOMUtilsCore.window.document.documentElement.clientHeight;
1461
+ return DOMUtilsContext.windowApi.window.document.documentElement
1462
+ .clientHeight;
1342
1463
  }
1343
1464
  if (typeof element === "string") {
1344
- element = DOMUtilsCore.document.querySelector(element);
1465
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1345
1466
  }
1346
1467
  if (element == null) {
1347
1468
  // @ts-ignore
@@ -1388,10 +1509,10 @@ System.register('DOMUtils', [], (function (exports) {
1388
1509
  outerWidth(element, isShow = false) {
1389
1510
  let DOMUtilsContext = this;
1390
1511
  if (DOMUtilsCommonUtils.isWin(element)) {
1391
- return DOMUtilsCore.window.innerWidth;
1512
+ return DOMUtilsContext.windowApi.window.innerWidth;
1392
1513
  }
1393
1514
  if (typeof element === "string") {
1394
- element = DOMUtilsCore.document.querySelector(element);
1515
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1395
1516
  }
1396
1517
  if (element == null) {
1397
1518
  // @ts-ignore
@@ -1414,10 +1535,10 @@ System.register('DOMUtils', [], (function (exports) {
1414
1535
  outerHeight(element, isShow = false) {
1415
1536
  let DOMUtilsContext = this;
1416
1537
  if (DOMUtilsCommonUtils.isWin(element)) {
1417
- return DOMUtilsCore.window.innerHeight;
1538
+ return DOMUtilsContext.windowApi.window.innerHeight;
1418
1539
  }
1419
1540
  if (typeof element === "string") {
1420
- element = DOMUtilsCore.document.querySelector(element);
1541
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1421
1542
  }
1422
1543
  if (element == null) {
1423
1544
  // @ts-ignore
@@ -1450,8 +1571,9 @@ System.register('DOMUtils', [], (function (exports) {
1450
1571
  * })
1451
1572
  */
1452
1573
  animate(element, styles, duration = 1000, callback = null) {
1574
+ let DOMUtilsContext = this;
1453
1575
  if (typeof element === "string") {
1454
- element = DOMUtilsCore.document.querySelector(element);
1576
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1455
1577
  }
1456
1578
  if (element == null) {
1457
1579
  return;
@@ -1502,15 +1624,16 @@ System.register('DOMUtils', [], (function (exports) {
1502
1624
  * DOMUtils.wrap(document.querySelector("a.xx"),"<div></div>")
1503
1625
  */
1504
1626
  wrap(element, wrapperHTML) {
1627
+ let DOMUtilsContext = this;
1505
1628
  if (typeof element === "string") {
1506
- element = DOMUtilsCore.document.querySelector(element);
1629
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1507
1630
  }
1508
1631
  if (element == null) {
1509
1632
  return;
1510
1633
  }
1511
1634
  element = element;
1512
1635
  // 创建一个新的div元素,并将wrapperHTML作为其innerHTML
1513
- let wrapper = DOMUtilsCore.document.createElement("div");
1636
+ let wrapper = DOMUtilsContext.windowApi.document.createElement("div");
1514
1637
  wrapper.innerHTML = wrapperHTML;
1515
1638
  let wrapperFirstChild = wrapper.firstChild;
1516
1639
  // 将要包裹的元素插入目标元素前面
@@ -1519,8 +1642,9 @@ System.register('DOMUtils', [], (function (exports) {
1519
1642
  wrapperFirstChild.appendChild(element);
1520
1643
  }
1521
1644
  prev(element) {
1645
+ let DOMUtilsContext = this;
1522
1646
  if (typeof element === "string") {
1523
- element = DOMUtilsCore.document.querySelector(element);
1647
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1524
1648
  }
1525
1649
  if (element == null) {
1526
1650
  return;
@@ -1528,8 +1652,9 @@ System.register('DOMUtils', [], (function (exports) {
1528
1652
  return element.previousElementSibling;
1529
1653
  }
1530
1654
  next(element) {
1655
+ let DOMUtilsContext = this;
1531
1656
  if (typeof element === "string") {
1532
- element = DOMUtilsCore.document.querySelector(element);
1657
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1533
1658
  }
1534
1659
  if (element == null) {
1535
1660
  return;
@@ -1542,15 +1667,17 @@ System.register('DOMUtils', [], (function (exports) {
1542
1667
  * let DOMUtils = window.DOMUtils.noConflict()
1543
1668
  */
1544
1669
  noConflict() {
1545
- if (DOMUtilsCore.window.DOMUtils) {
1670
+ let DOMUtilsContext = this;
1671
+ if (DOMUtilsContext.windowApi.window.DOMUtils) {
1546
1672
  DOMUtilsCommonUtils.delete(window, "DOMUtils");
1547
1673
  }
1548
- DOMUtilsCore.window.DOMUtils = this;
1674
+ DOMUtilsContext.windowApi.window.DOMUtils = this;
1549
1675
  return this;
1550
1676
  }
1551
1677
  siblings(element) {
1678
+ let DOMUtilsContext = this;
1552
1679
  if (typeof element === "string") {
1553
- element = DOMUtilsCore.document.querySelector(element);
1680
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1554
1681
  }
1555
1682
  if (element == null) {
1556
1683
  return;
@@ -1571,7 +1698,7 @@ System.register('DOMUtils', [], (function (exports) {
1571
1698
  parent(element) {
1572
1699
  let DOMUtilsContext = this;
1573
1700
  if (typeof element === "string") {
1574
- element = DOMUtilsCore.document.querySelector(element);
1701
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1575
1702
  }
1576
1703
  if (element == null) {
1577
1704
  return;
@@ -1589,6 +1716,7 @@ System.register('DOMUtils', [], (function (exports) {
1589
1716
  }
1590
1717
  }
1591
1718
  parseHTML(html, useParser = false, isComplete = false) {
1719
+ let DOMUtilsContext = this;
1592
1720
  function parseHTMLByDOMParser() {
1593
1721
  let parser = new DOMParser();
1594
1722
  if (isComplete) {
@@ -1599,7 +1727,7 @@ System.register('DOMUtils', [], (function (exports) {
1599
1727
  }
1600
1728
  }
1601
1729
  function parseHTMLByCreateDom() {
1602
- let tempDIV = DOMUtilsCore.document.createElement("div");
1730
+ let tempDIV = DOMUtilsContext.windowApi.document.createElement("div");
1603
1731
  tempDIV.innerHTML = html;
1604
1732
  if (isComplete) {
1605
1733
  return tempDIV;
@@ -1630,7 +1758,7 @@ System.register('DOMUtils', [], (function (exports) {
1630
1758
  return;
1631
1759
  }
1632
1760
  if (typeof target === "string") {
1633
- target = DOMUtilsCore.document.querySelectorAll(target);
1761
+ target = DOMUtilsContext.windowApi.document.querySelectorAll(target);
1634
1762
  }
1635
1763
  if (target instanceof NodeList || target instanceof Array) {
1636
1764
  target = target;
@@ -1662,7 +1790,7 @@ System.register('DOMUtils', [], (function (exports) {
1662
1790
  return;
1663
1791
  }
1664
1792
  if (typeof target === "string") {
1665
- target = DOMUtilsCore.document.querySelectorAll(target);
1793
+ target = DOMUtilsContext.windowApi.document.querySelectorAll(target);
1666
1794
  }
1667
1795
  if (target instanceof NodeList || target instanceof Array) {
1668
1796
  target = target;
@@ -1697,8 +1825,9 @@ System.register('DOMUtils', [], (function (exports) {
1697
1825
  if (element == null) {
1698
1826
  return;
1699
1827
  }
1828
+ let DOMUtilsContext = this;
1700
1829
  if (typeof element === "string") {
1701
- element = DOMUtilsCore.document.querySelector(element);
1830
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1702
1831
  }
1703
1832
  element = element;
1704
1833
  element.style.opacity = "0";
@@ -1712,16 +1841,16 @@ System.register('DOMUtils', [], (function (exports) {
1712
1841
  element = element;
1713
1842
  element.style.opacity = Math.min(progress / duration, 1).toString();
1714
1843
  if (progress < duration) {
1715
- DOMUtilsCore.window.requestAnimationFrame(step);
1844
+ DOMUtilsContext.windowApi.window.requestAnimationFrame(step);
1716
1845
  }
1717
1846
  else {
1718
1847
  if (callback && typeof callback === "function") {
1719
1848
  callback();
1720
1849
  }
1721
- DOMUtilsCore.window.cancelAnimationFrame(timer);
1850
+ DOMUtilsContext.windowApi.window.cancelAnimationFrame(timer);
1722
1851
  }
1723
1852
  }
1724
- timer = DOMUtilsCore.window.requestAnimationFrame(step);
1853
+ timer = DOMUtilsContext.windowApi.window.requestAnimationFrame(step);
1725
1854
  }
1726
1855
  /**
1727
1856
  * 淡出元素
@@ -1738,11 +1867,12 @@ System.register('DOMUtils', [], (function (exports) {
1738
1867
  * })
1739
1868
  */
1740
1869
  fadeOut(element, duration = 400, callback) {
1870
+ let DOMUtilsContext = this;
1741
1871
  if (element == null) {
1742
1872
  return;
1743
1873
  }
1744
1874
  if (typeof element === "string") {
1745
- element = DOMUtilsCore.document.querySelector(element);
1875
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1746
1876
  }
1747
1877
  element = element;
1748
1878
  element.style.opacity = "1";
@@ -1755,17 +1885,17 @@ System.register('DOMUtils', [], (function (exports) {
1755
1885
  element = element;
1756
1886
  element.style.opacity = Math.max(1 - progress / duration, 0).toString();
1757
1887
  if (progress < duration) {
1758
- DOMUtilsCore.window.requestAnimationFrame(step);
1888
+ DOMUtilsContext.windowApi.window.requestAnimationFrame(step);
1759
1889
  }
1760
1890
  else {
1761
1891
  element.style.display = "none";
1762
1892
  if (typeof callback === "function") {
1763
1893
  callback();
1764
1894
  }
1765
- DOMUtilsCore.window.cancelAnimationFrame(timer);
1895
+ DOMUtilsContext.windowApi.window.cancelAnimationFrame(timer);
1766
1896
  }
1767
1897
  }
1768
- timer = DOMUtilsCore.window.requestAnimationFrame(step);
1898
+ timer = DOMUtilsContext.windowApi.window.requestAnimationFrame(step);
1769
1899
  }
1770
1900
  /**
1771
1901
  * 切换元素的显示和隐藏状态
@@ -1778,7 +1908,7 @@ System.register('DOMUtils', [], (function (exports) {
1778
1908
  toggle(element) {
1779
1909
  let DOMUtilsContext = this;
1780
1910
  if (typeof element === "string") {
1781
- element = DOMUtilsCore.document.querySelector(element);
1911
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1782
1912
  }
1783
1913
  if (element == null) {
1784
1914
  return;
@@ -1807,6 +1937,7 @@ System.register('DOMUtils', [], (function (exports) {
1807
1937
  * DOMUtils.getTextBoundingRect(document.querySelector("input"));
1808
1938
  */
1809
1939
  getTextBoundingRect($input, selectionStart, selectionEnd) {
1940
+ let DOMUtilsContext = this;
1810
1941
  // Basic parameter validation
1811
1942
  if (!$input || !("value" in $input))
1812
1943
  return $input;
@@ -1876,7 +2007,7 @@ System.register('DOMUtils', [], (function (exports) {
1876
2007
  }
1877
2008
  // End of CSS variable checks
1878
2009
  // 不能为空,不然获取不到高度
1879
- let text = $input.value || "G", textLen = text.length, fakeClone = DOMUtilsCore.document.createElement("div");
2010
+ let text = $input.value || "G", textLen = text.length, fakeClone = DOMUtilsContext.windowApi.document.createElement("div");
1880
2011
  if (selectionStart > 0)
1881
2012
  appendPart(0, selectionStart);
1882
2013
  var fakeRange = appendPart(selectionStart, selectionEnd);
@@ -1890,7 +2021,7 @@ System.register('DOMUtils', [], (function (exports) {
1890
2021
  fakeClone.style.left = leftPos + "px";
1891
2022
  fakeClone.style.width = width + "px";
1892
2023
  fakeClone.style.height = height + "px";
1893
- DOMUtilsCore.document.body.appendChild(fakeClone);
2024
+ DOMUtilsContext.windowApi.document.body.appendChild(fakeClone);
1894
2025
  var returnValue = fakeRange.getBoundingClientRect(); //Get rect
1895
2026
  fakeClone?.parentNode?.removeChild(fakeClone); //Remove temp
1896
2027
  return returnValue;
@@ -1902,7 +2033,7 @@ System.register('DOMUtils', [], (function (exports) {
1902
2033
  * @returns
1903
2034
  */
1904
2035
  function appendPart(start, end) {
1905
- var span = DOMUtilsCore.document.createElement("span");
2036
+ var span = DOMUtilsContext.windowApi.document.createElement("span");
1906
2037
  span.style.cssText = cssDefaultStyles; //Force styles to prevent unexpected results
1907
2038
  span.textContent = text.substring(start, end);
1908
2039
  fakeClone.appendChild(span);
@@ -1910,7 +2041,7 @@ System.register('DOMUtils', [], (function (exports) {
1910
2041
  }
1911
2042
  // Computing offset position
1912
2043
  function getInputOffset() {
1913
- let body = DOMUtilsCore.document.body, win = DOMUtilsCore.document.defaultView, docElem = DOMUtilsCore.document.documentElement, $box = DOMUtilsCore.document.createElement("div");
2044
+ let body = DOMUtilsContext.windowApi.document.body, win = DOMUtilsContext.windowApi.document.defaultView, docElem = DOMUtilsContext.windowApi.document.documentElement, $box = DOMUtilsContext.windowApi.document.createElement("div");
1914
2045
  $box.style.paddingLeft = $box.style.width = "1px";
1915
2046
  body.appendChild($box);
1916
2047
  var isBoxModel = $box.offsetWidth == 2;
@@ -1933,7 +2064,7 @@ System.register('DOMUtils', [], (function (exports) {
1933
2064
  * @returns
1934
2065
  */
1935
2066
  function getInputCSS(prop, isNumber) {
1936
- var val = DOMUtilsCore.document
2067
+ var val = DOMUtilsContext.windowApi.document
1937
2068
  .defaultView.getComputedStyle($input, null)
1938
2069
  .getPropertyValue(prop);
1939
2070
  return isNumber ? parseFloat(val) : val;