@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.
@@ -1,43 +1,12 @@
1
1
  var DOMUtils = (function () {
2
2
  'use strict';
3
3
 
4
- const DOMUtilsCoreDefaultEnv = {
5
- document: document,
6
- window: window,
7
- globalThis: globalThis,
8
- self: self,
9
- top: top,
10
- };
11
- const DOMUtilsCoreEnv = {
12
- document: document,
13
- window: window,
14
- globalThis: globalThis,
15
- self: self,
16
- top: top,
17
- };
18
- const DOMUtilsCore = {
19
- init(option) {
20
- if (!option) {
21
- option = Object.assign({}, DOMUtilsCoreDefaultEnv);
22
- }
23
- Object.assign(DOMUtilsCoreEnv, option);
24
- },
25
- get document() {
26
- return DOMUtilsCoreEnv.document;
27
- },
28
- get window() {
29
- return DOMUtilsCoreEnv.window;
30
- },
31
- get globalThis() {
32
- return DOMUtilsCoreEnv.globalThis;
33
- },
34
- get self() {
35
- return DOMUtilsCoreEnv.self;
36
- },
37
- };
38
-
39
4
  /** 通用工具类 */
40
5
  const DOMUtilsCommonUtils = {
6
+ windowApi: {
7
+ window: window,
8
+ document: document,
9
+ },
41
10
  /**
42
11
  * 判断元素是否已显示或已连接
43
12
  * @param element
@@ -52,7 +21,7 @@ var DOMUtils = (function () {
52
21
  showElement(element) {
53
22
  let dupNode = element.cloneNode(true);
54
23
  dupNode.setAttribute("style", "visibility: hidden !important;display:block !important;");
55
- DOMUtilsCore.document.documentElement.appendChild(dupNode);
24
+ this.windowApi.document.documentElement.appendChild(dupNode);
56
25
  return {
57
26
  /**
58
27
  * 恢复修改的style
@@ -109,13 +78,13 @@ var DOMUtils = (function () {
109
78
  if (target === self) {
110
79
  return true;
111
80
  }
112
- if (target === DOMUtilsCore.globalThis) {
81
+ if (target === globalThis) {
113
82
  return true;
114
83
  }
115
- if (target === DOMUtilsCore.window) {
84
+ if (target === window) {
116
85
  return true;
117
86
  }
118
- if (target === DOMUtilsCore.self) {
87
+ if (target === self) {
119
88
  return true;
120
89
  }
121
90
  if (typeof unsafeWindow !== "undefined" && target === unsafeWindow) {
@@ -153,7 +122,45 @@ var DOMUtils = (function () {
153
122
  },
154
123
  };
155
124
 
125
+ class WindowApi {
126
+ /** 默认的配置 */
127
+ defaultApi = {
128
+ document: document,
129
+ window: window,
130
+ globalThis: globalThis,
131
+ self: self,
132
+ top: top,
133
+ };
134
+ /** 使用的配置 */
135
+ api;
136
+ constructor(option) {
137
+ if (!option) {
138
+ option = Object.assign({}, this.defaultApi);
139
+ }
140
+ this.api = Object.assign({}, option);
141
+ }
142
+ get document() {
143
+ return this.api.document;
144
+ }
145
+ get window() {
146
+ return this.api.window;
147
+ }
148
+ get globalThis() {
149
+ return this.api.globalThis;
150
+ }
151
+ get self() {
152
+ return this.api.self;
153
+ }
154
+ get top() {
155
+ return this.api.top;
156
+ }
157
+ }
158
+
156
159
  class DOMUtilsEvent {
160
+ windowApi;
161
+ constructor(windowApiOption) {
162
+ this.windowApi = new WindowApi(windowApiOption);
163
+ }
157
164
  on(element, eventType, selector, callback, option) {
158
165
  /**
159
166
  * 获取option配置
@@ -184,7 +191,7 @@ var DOMUtils = (function () {
184
191
  let DOMUtilsContext = this;
185
192
  let args = arguments;
186
193
  if (typeof element === "string") {
187
- element = DOMUtilsCore.document.querySelectorAll(element);
194
+ element = DOMUtilsContext.windowApi.document.querySelectorAll(element);
188
195
  }
189
196
  if (element == null) {
190
197
  return;
@@ -235,7 +242,7 @@ var DOMUtils = (function () {
235
242
  if (_selector_) {
236
243
  /* 存在自定义子元素选择器 */
237
244
  let totalParent = DOMUtilsCommonUtils.isWin(elementItem)
238
- ? DOMUtilsCore.document.documentElement
245
+ ? DOMUtilsContext.windowApi.document.documentElement
239
246
  : elementItem;
240
247
  if (target.matches(_selector_)) {
241
248
  /* 当前目标可以被selector所匹配到 */
@@ -299,9 +306,10 @@ var DOMUtils = (function () {
299
306
  }
300
307
  return option;
301
308
  }
309
+ let DOMUtilsContext = this;
302
310
  let args = arguments;
303
311
  if (typeof element === "string") {
304
- element = DOMUtilsCore.document.querySelectorAll(element);
312
+ element = DOMUtilsContext.windowApi.document.querySelectorAll(element);
305
313
  }
306
314
  if (element == null) {
307
315
  return;
@@ -384,8 +392,9 @@ var DOMUtils = (function () {
384
392
  * @param eventType (可选)需要取消监听的事件
385
393
  */
386
394
  offAll(element, eventType) {
395
+ let DOMUtilsContext = this;
387
396
  if (typeof element === "string") {
388
- element = DOMUtilsCore.document.querySelectorAll(element);
397
+ element = DOMUtilsContext.windowApi.document.querySelectorAll(element);
389
398
  }
390
399
  if (element == null) {
391
400
  return;
@@ -440,14 +449,16 @@ var DOMUtils = (function () {
440
449
  if (typeof callback !== "function") {
441
450
  return;
442
451
  }
452
+ let DOMUtilsContext = this;
443
453
  /**
444
454
  * 检测文档是否加载完毕
445
455
  */
446
456
  function checkDOMReadyState() {
447
457
  try {
448
- if (DOMUtilsCore.document.readyState === "complete" ||
449
- (DOMUtilsCore.document.readyState !== "loading" &&
450
- !DOMUtilsCore.document.documentElement.doScroll)) {
458
+ if (DOMUtilsContext.windowApi.document.readyState === "complete" ||
459
+ (DOMUtilsContext.windowApi.document.readyState !== "loading" &&
460
+ !DOMUtilsContext.windowApi.document.documentElement
461
+ .doScroll)) {
451
462
  return true;
452
463
  }
453
464
  else {
@@ -467,12 +478,12 @@ var DOMUtils = (function () {
467
478
  }
468
479
  let targetList = [
469
480
  {
470
- target: DOMUtilsCore.document,
481
+ target: DOMUtilsContext.windowApi.document,
471
482
  eventType: "DOMContentLoaded",
472
483
  callback: completed,
473
484
  },
474
485
  {
475
- target: DOMUtilsCore.window,
486
+ target: DOMUtilsContext.windowApi.window,
476
487
  eventType: "load",
477
488
  callback: completed,
478
489
  },
@@ -519,8 +530,9 @@ var DOMUtils = (function () {
519
530
  * DOMUtils.trigger("a.xx",["click","tap","hover"])
520
531
  */
521
532
  trigger(element, eventType, details, useDispatchToTriggerEvent = true) {
533
+ let DOMUtilsContext = this;
522
534
  if (typeof element === "string") {
523
- element = DOMUtilsCore.document.querySelector(element);
535
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
524
536
  }
525
537
  if (element == null) {
526
538
  return;
@@ -584,7 +596,7 @@ var DOMUtils = (function () {
584
596
  click(element, handler, details, useDispatchToTriggerEvent) {
585
597
  let DOMUtilsContext = this;
586
598
  if (typeof element === "string") {
587
- element = DOMUtilsCore.document.querySelector(element);
599
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
588
600
  }
589
601
  if (element == null) {
590
602
  return;
@@ -613,7 +625,7 @@ var DOMUtils = (function () {
613
625
  blur(element, handler, details, useDispatchToTriggerEvent) {
614
626
  let DOMUtilsContext = this;
615
627
  if (typeof element === "string") {
616
- element = DOMUtilsCore.document.querySelector(element);
628
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
617
629
  }
618
630
  if (element == null) {
619
631
  return;
@@ -642,7 +654,7 @@ var DOMUtils = (function () {
642
654
  focus(element, handler, details, useDispatchToTriggerEvent) {
643
655
  let DOMUtilsContext = this;
644
656
  if (typeof element === "string") {
645
- element = DOMUtilsCore.document.querySelector(element);
657
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
646
658
  }
647
659
  if (element == null) {
648
660
  return;
@@ -671,7 +683,7 @@ var DOMUtils = (function () {
671
683
  hover(element, handler, option) {
672
684
  let DOMUtilsContext = this;
673
685
  if (typeof element === "string") {
674
- element = DOMUtilsCore.document.querySelector(element);
686
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
675
687
  }
676
688
  if (element == null) {
677
689
  return;
@@ -700,7 +712,7 @@ var DOMUtils = (function () {
700
712
  return;
701
713
  }
702
714
  if (typeof target === "string") {
703
- target = DOMUtilsCore.document.querySelector(target);
715
+ target = DOMUtilsContext.windowApi.document.querySelector(target);
704
716
  }
705
717
  DOMUtilsContext.on(target, "keyup", null, handler, option);
706
718
  }
@@ -725,7 +737,7 @@ var DOMUtils = (function () {
725
737
  return;
726
738
  }
727
739
  if (typeof target === "string") {
728
- target = DOMUtilsCore.document.querySelector(target);
740
+ target = DOMUtilsContext.windowApi.document.querySelector(target);
729
741
  }
730
742
  DOMUtilsContext.on(target, "keydown", null, handler, option);
731
743
  }
@@ -750,7 +762,7 @@ var DOMUtils = (function () {
750
762
  return;
751
763
  }
752
764
  if (typeof target === "string") {
753
- target = DOMUtilsCore.document.querySelector(target);
765
+ target = DOMUtilsContext.windowApi.document.querySelector(target);
754
766
  }
755
767
  DOMUtilsContext.on(target, "keypress", null, handler, option);
756
768
  }
@@ -758,14 +770,14 @@ var DOMUtils = (function () {
758
770
 
759
771
  class DOMUtils extends DOMUtilsEvent {
760
772
  constructor(option) {
761
- DOMUtilsCore.init(option);
762
- super();
773
+ super(option);
763
774
  }
764
775
  /** 版本号 */
765
- version = "2024.6.21";
776
+ version = "2024.7.24";
766
777
  attr(element, attrName, attrValue) {
778
+ let DOMUtilsContext = this;
767
779
  if (typeof element === "string") {
768
- element = DOMUtilsCore.document.querySelector(element);
780
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
769
781
  }
770
782
  if (element == null) {
771
783
  return;
@@ -802,7 +814,8 @@ var DOMUtils = (function () {
802
814
  property,
803
815
  /** 自定义属性 */
804
816
  attributes) {
805
- let tempElement = DOMUtilsCore.document.createElement(tagName);
817
+ let DOMUtilsContext = this;
818
+ let tempElement = DOMUtilsContext.windowApi.document.createElement(tagName);
806
819
  if (typeof property === "string") {
807
820
  tempElement.innerHTML = property;
808
821
  return tempElement;
@@ -832,6 +845,7 @@ var DOMUtils = (function () {
832
845
  return tempElement;
833
846
  }
834
847
  css(element, property, value) {
848
+ let DOMUtilsContext = this;
835
849
  /**
836
850
  * 把纯数字没有px的加上
837
851
  */
@@ -856,7 +870,7 @@ var DOMUtils = (function () {
856
870
  return propertyValue;
857
871
  }
858
872
  if (typeof element === "string") {
859
- element = DOMUtilsCore.document.querySelector(element);
873
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
860
874
  }
861
875
  if (element == null) {
862
876
  return;
@@ -889,8 +903,9 @@ var DOMUtils = (function () {
889
903
  }
890
904
  }
891
905
  text(element, text) {
906
+ let DOMUtilsContext = this;
892
907
  if (typeof element === "string") {
893
- element = DOMUtilsCore.document.querySelector(element);
908
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
894
909
  }
895
910
  if (element == null) {
896
911
  return;
@@ -911,8 +926,9 @@ var DOMUtils = (function () {
911
926
  }
912
927
  }
913
928
  html(element, html) {
929
+ let DOMUtilsContext = this;
914
930
  if (typeof element === "string") {
915
- element = DOMUtilsCore.document.querySelector(element);
931
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
916
932
  }
917
933
  if (element == null) {
918
934
  return;
@@ -965,8 +981,9 @@ var DOMUtils = (function () {
965
981
  };
966
982
  }
967
983
  val(element, value) {
984
+ let DOMUtilsContext = this;
968
985
  if (typeof element === "string") {
969
- element = DOMUtilsCore.document.querySelector(element);
986
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
970
987
  }
971
988
  if (element == null) {
972
989
  return;
@@ -991,11 +1008,12 @@ var DOMUtils = (function () {
991
1008
  }
992
1009
  }
993
1010
  prop(element, propName, propValue) {
1011
+ let DOMUtilsContext = this;
994
1012
  if (element == null) {
995
1013
  return;
996
1014
  }
997
1015
  if (typeof element === "string") {
998
- element = DOMUtilsCore.document.querySelector(element);
1016
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
999
1017
  }
1000
1018
  if (propValue == null) {
1001
1019
  return element[propName];
@@ -1014,8 +1032,9 @@ var DOMUtils = (function () {
1014
1032
  * DOMUtils.removeAttr("a.xx","data-value")
1015
1033
  * */
1016
1034
  removeAttr(element, attrName) {
1035
+ let DOMUtilsContext = this;
1017
1036
  if (typeof element === "string") {
1018
- element = DOMUtilsCore.document.querySelector(element);
1037
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1019
1038
  }
1020
1039
  if (element == null) {
1021
1040
  return;
@@ -1032,8 +1051,9 @@ var DOMUtils = (function () {
1032
1051
  * DOMUtils.removeClass("a.xx","xx")
1033
1052
  */
1034
1053
  removeClass(element, className) {
1054
+ let DOMUtilsContext = this;
1035
1055
  if (typeof element === "string") {
1036
- element = DOMUtilsCore.document.querySelector(element);
1056
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1037
1057
  }
1038
1058
  if (element == null) {
1039
1059
  return;
@@ -1053,8 +1073,9 @@ var DOMUtils = (function () {
1053
1073
  * DOMUtils.removeProp("a.xx","href")
1054
1074
  * */
1055
1075
  removeProp(element, propName) {
1076
+ let DOMUtilsContext = this;
1056
1077
  if (typeof element === "string") {
1057
- element = DOMUtilsCore.document.querySelector(element);
1078
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1058
1079
  }
1059
1080
  if (element == null) {
1060
1081
  return;
@@ -1073,7 +1094,7 @@ var DOMUtils = (function () {
1073
1094
  replaceWith(element, newElement) {
1074
1095
  let DOMUtilsContext = this;
1075
1096
  if (typeof element === "string") {
1076
- element = DOMUtilsCore.document.querySelector(element);
1097
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1077
1098
  }
1078
1099
  if (element == null) {
1079
1100
  return;
@@ -1100,8 +1121,9 @@ var DOMUtils = (function () {
1100
1121
  * DOMUtils.addClass("a.xx","_vue_")
1101
1122
  * */
1102
1123
  addClass(element, className) {
1124
+ let DOMUtilsContext = this;
1103
1125
  if (typeof element === "string") {
1104
- element = DOMUtilsCore.document.querySelector(element);
1126
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1105
1127
  }
1106
1128
  if (element == null) {
1107
1129
  return;
@@ -1118,8 +1140,9 @@ var DOMUtils = (function () {
1118
1140
  * DOMUtils.append("a.xx","'<b class="xx"></b>")
1119
1141
  * */
1120
1142
  append(element, content) {
1143
+ let DOMUtilsContext = this;
1121
1144
  if (typeof element === "string") {
1122
- element = DOMUtilsCore.document.querySelector(element);
1145
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1123
1146
  }
1124
1147
  if (element == null) {
1125
1148
  return;
@@ -1134,7 +1157,7 @@ var DOMUtils = (function () {
1134
1157
  }
1135
1158
  if (Array.isArray(content) || content instanceof NodeList) {
1136
1159
  /* 数组 */
1137
- let fragment = DOMUtilsCore.document.createDocumentFragment();
1160
+ let fragment = DOMUtilsContext.windowApi.document.createDocumentFragment();
1138
1161
  content.forEach((ele) => {
1139
1162
  if (typeof ele === "string") {
1140
1163
  ele = this.parseHTML(ele, true, false);
@@ -1157,8 +1180,9 @@ var DOMUtils = (function () {
1157
1180
  * DOMUtils.prepend("a.xx","'<b class="xx"></b>")
1158
1181
  * */
1159
1182
  prepend(element, content) {
1183
+ let DOMUtilsContext = this;
1160
1184
  if (typeof element === "string") {
1161
- element = DOMUtilsCore.document.querySelector(element);
1185
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1162
1186
  }
1163
1187
  if (element == null) {
1164
1188
  return;
@@ -1180,8 +1204,9 @@ var DOMUtils = (function () {
1180
1204
  * DOMUtils.after("a.xx","'<b class="xx"></b>")
1181
1205
  * */
1182
1206
  after(element, content) {
1207
+ let DOMUtilsContext = this;
1183
1208
  if (typeof element === "string") {
1184
- element = DOMUtilsCore.document.querySelector(element);
1209
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1185
1210
  }
1186
1211
  if (element == null) {
1187
1212
  return;
@@ -1203,8 +1228,9 @@ var DOMUtils = (function () {
1203
1228
  * DOMUtils.before("a.xx","'<b class="xx"></b>")
1204
1229
  * */
1205
1230
  before(element, content) {
1231
+ let DOMUtilsContext = this;
1206
1232
  if (typeof element === "string") {
1207
- element = DOMUtilsCore.document.querySelector(element);
1233
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1208
1234
  }
1209
1235
  if (element == null) {
1210
1236
  return;
@@ -1228,7 +1254,7 @@ var DOMUtils = (function () {
1228
1254
  remove(target) {
1229
1255
  let DOMUtilsContext = this;
1230
1256
  if (typeof target === "string") {
1231
- target = DOMUtilsCore.document.querySelectorAll(target);
1257
+ target = DOMUtilsContext.windowApi.document.querySelectorAll(target);
1232
1258
  }
1233
1259
  if (target == null) {
1234
1260
  return;
@@ -1252,8 +1278,9 @@ var DOMUtils = (function () {
1252
1278
  * DOMUtils.empty("a.xx")
1253
1279
  * */
1254
1280
  empty(element) {
1281
+ let DOMUtilsContext = this;
1255
1282
  if (typeof element === "string") {
1256
- element = DOMUtilsCore.document.querySelector(element);
1283
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1257
1284
  }
1258
1285
  if (element == null) {
1259
1286
  return;
@@ -1270,8 +1297,9 @@ var DOMUtils = (function () {
1270
1297
  * > 0
1271
1298
  */
1272
1299
  offset(element) {
1300
+ let DOMUtilsContext = this;
1273
1301
  if (typeof element === "string") {
1274
- element = DOMUtilsCore.document.querySelector(element);
1302
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1275
1303
  }
1276
1304
  if (element == null) {
1277
1305
  return;
@@ -1279,21 +1307,22 @@ var DOMUtils = (function () {
1279
1307
  let rect = element.getBoundingClientRect();
1280
1308
  return {
1281
1309
  /** y轴偏移 */
1282
- top: rect.top + DOMUtilsCore.globalThis.scrollY,
1310
+ top: rect.top + DOMUtilsContext.windowApi.globalThis.scrollY,
1283
1311
  /** x轴偏移 */
1284
- left: rect.left + DOMUtilsCore.globalThis.scrollX,
1312
+ left: rect.left + DOMUtilsContext.windowApi.globalThis.scrollX,
1285
1313
  };
1286
1314
  }
1287
1315
  width(element, isShow = false) {
1288
1316
  let DOMUtilsContext = this;
1289
1317
  if (typeof element === "string") {
1290
- element = DOMUtilsCore.document.querySelector(element);
1318
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1291
1319
  }
1292
1320
  if (element == null) {
1293
1321
  return;
1294
1322
  }
1295
1323
  if (DOMUtilsCommonUtils.isWin(element)) {
1296
- return DOMUtilsCore.window.document.documentElement.clientWidth;
1324
+ return DOMUtilsContext.windowApi.window.document.documentElement
1325
+ .clientWidth;
1297
1326
  }
1298
1327
  if (element.nodeType === 9) {
1299
1328
  /* Document文档节点 */
@@ -1336,10 +1365,11 @@ var DOMUtils = (function () {
1336
1365
  height(element, isShow = false) {
1337
1366
  let DOMUtilsContext = this;
1338
1367
  if (DOMUtilsCommonUtils.isWin(element)) {
1339
- return DOMUtilsCore.window.document.documentElement.clientHeight;
1368
+ return DOMUtilsContext.windowApi.window.document.documentElement
1369
+ .clientHeight;
1340
1370
  }
1341
1371
  if (typeof element === "string") {
1342
- element = DOMUtilsCore.document.querySelector(element);
1372
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1343
1373
  }
1344
1374
  if (element == null) {
1345
1375
  // @ts-ignore
@@ -1386,10 +1416,10 @@ var DOMUtils = (function () {
1386
1416
  outerWidth(element, isShow = false) {
1387
1417
  let DOMUtilsContext = this;
1388
1418
  if (DOMUtilsCommonUtils.isWin(element)) {
1389
- return DOMUtilsCore.window.innerWidth;
1419
+ return DOMUtilsContext.windowApi.window.innerWidth;
1390
1420
  }
1391
1421
  if (typeof element === "string") {
1392
- element = DOMUtilsCore.document.querySelector(element);
1422
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1393
1423
  }
1394
1424
  if (element == null) {
1395
1425
  // @ts-ignore
@@ -1412,10 +1442,10 @@ var DOMUtils = (function () {
1412
1442
  outerHeight(element, isShow = false) {
1413
1443
  let DOMUtilsContext = this;
1414
1444
  if (DOMUtilsCommonUtils.isWin(element)) {
1415
- return DOMUtilsCore.window.innerHeight;
1445
+ return DOMUtilsContext.windowApi.window.innerHeight;
1416
1446
  }
1417
1447
  if (typeof element === "string") {
1418
- element = DOMUtilsCore.document.querySelector(element);
1448
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1419
1449
  }
1420
1450
  if (element == null) {
1421
1451
  // @ts-ignore
@@ -1448,8 +1478,9 @@ var DOMUtils = (function () {
1448
1478
  * })
1449
1479
  */
1450
1480
  animate(element, styles, duration = 1000, callback = null) {
1481
+ let DOMUtilsContext = this;
1451
1482
  if (typeof element === "string") {
1452
- element = DOMUtilsCore.document.querySelector(element);
1483
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1453
1484
  }
1454
1485
  if (element == null) {
1455
1486
  return;
@@ -1500,15 +1531,16 @@ var DOMUtils = (function () {
1500
1531
  * DOMUtils.wrap(document.querySelector("a.xx"),"<div></div>")
1501
1532
  */
1502
1533
  wrap(element, wrapperHTML) {
1534
+ let DOMUtilsContext = this;
1503
1535
  if (typeof element === "string") {
1504
- element = DOMUtilsCore.document.querySelector(element);
1536
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1505
1537
  }
1506
1538
  if (element == null) {
1507
1539
  return;
1508
1540
  }
1509
1541
  element = element;
1510
1542
  // 创建一个新的div元素,并将wrapperHTML作为其innerHTML
1511
- let wrapper = DOMUtilsCore.document.createElement("div");
1543
+ let wrapper = DOMUtilsContext.windowApi.document.createElement("div");
1512
1544
  wrapper.innerHTML = wrapperHTML;
1513
1545
  let wrapperFirstChild = wrapper.firstChild;
1514
1546
  // 将要包裹的元素插入目标元素前面
@@ -1517,8 +1549,9 @@ var DOMUtils = (function () {
1517
1549
  wrapperFirstChild.appendChild(element);
1518
1550
  }
1519
1551
  prev(element) {
1552
+ let DOMUtilsContext = this;
1520
1553
  if (typeof element === "string") {
1521
- element = DOMUtilsCore.document.querySelector(element);
1554
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1522
1555
  }
1523
1556
  if (element == null) {
1524
1557
  return;
@@ -1526,8 +1559,9 @@ var DOMUtils = (function () {
1526
1559
  return element.previousElementSibling;
1527
1560
  }
1528
1561
  next(element) {
1562
+ let DOMUtilsContext = this;
1529
1563
  if (typeof element === "string") {
1530
- element = DOMUtilsCore.document.querySelector(element);
1564
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1531
1565
  }
1532
1566
  if (element == null) {
1533
1567
  return;
@@ -1540,15 +1574,17 @@ var DOMUtils = (function () {
1540
1574
  * let DOMUtils = window.DOMUtils.noConflict()
1541
1575
  */
1542
1576
  noConflict() {
1543
- if (DOMUtilsCore.window.DOMUtils) {
1577
+ let DOMUtilsContext = this;
1578
+ if (DOMUtilsContext.windowApi.window.DOMUtils) {
1544
1579
  DOMUtilsCommonUtils.delete(window, "DOMUtils");
1545
1580
  }
1546
- DOMUtilsCore.window.DOMUtils = this;
1581
+ DOMUtilsContext.windowApi.window.DOMUtils = this;
1547
1582
  return this;
1548
1583
  }
1549
1584
  siblings(element) {
1585
+ let DOMUtilsContext = this;
1550
1586
  if (typeof element === "string") {
1551
- element = DOMUtilsCore.document.querySelector(element);
1587
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1552
1588
  }
1553
1589
  if (element == null) {
1554
1590
  return;
@@ -1569,7 +1605,7 @@ var DOMUtils = (function () {
1569
1605
  parent(element) {
1570
1606
  let DOMUtilsContext = this;
1571
1607
  if (typeof element === "string") {
1572
- element = DOMUtilsCore.document.querySelector(element);
1608
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1573
1609
  }
1574
1610
  if (element == null) {
1575
1611
  return;
@@ -1587,6 +1623,7 @@ var DOMUtils = (function () {
1587
1623
  }
1588
1624
  }
1589
1625
  parseHTML(html, useParser = false, isComplete = false) {
1626
+ let DOMUtilsContext = this;
1590
1627
  function parseHTMLByDOMParser() {
1591
1628
  let parser = new DOMParser();
1592
1629
  if (isComplete) {
@@ -1597,7 +1634,7 @@ var DOMUtils = (function () {
1597
1634
  }
1598
1635
  }
1599
1636
  function parseHTMLByCreateDom() {
1600
- let tempDIV = DOMUtilsCore.document.createElement("div");
1637
+ let tempDIV = DOMUtilsContext.windowApi.document.createElement("div");
1601
1638
  tempDIV.innerHTML = html;
1602
1639
  if (isComplete) {
1603
1640
  return tempDIV;
@@ -1628,7 +1665,7 @@ var DOMUtils = (function () {
1628
1665
  return;
1629
1666
  }
1630
1667
  if (typeof target === "string") {
1631
- target = DOMUtilsCore.document.querySelectorAll(target);
1668
+ target = DOMUtilsContext.windowApi.document.querySelectorAll(target);
1632
1669
  }
1633
1670
  if (target instanceof NodeList || target instanceof Array) {
1634
1671
  target = target;
@@ -1660,7 +1697,7 @@ var DOMUtils = (function () {
1660
1697
  return;
1661
1698
  }
1662
1699
  if (typeof target === "string") {
1663
- target = DOMUtilsCore.document.querySelectorAll(target);
1700
+ target = DOMUtilsContext.windowApi.document.querySelectorAll(target);
1664
1701
  }
1665
1702
  if (target instanceof NodeList || target instanceof Array) {
1666
1703
  target = target;
@@ -1695,8 +1732,9 @@ var DOMUtils = (function () {
1695
1732
  if (element == null) {
1696
1733
  return;
1697
1734
  }
1735
+ let DOMUtilsContext = this;
1698
1736
  if (typeof element === "string") {
1699
- element = DOMUtilsCore.document.querySelector(element);
1737
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1700
1738
  }
1701
1739
  element = element;
1702
1740
  element.style.opacity = "0";
@@ -1710,16 +1748,16 @@ var DOMUtils = (function () {
1710
1748
  element = element;
1711
1749
  element.style.opacity = Math.min(progress / duration, 1).toString();
1712
1750
  if (progress < duration) {
1713
- DOMUtilsCore.window.requestAnimationFrame(step);
1751
+ DOMUtilsContext.windowApi.window.requestAnimationFrame(step);
1714
1752
  }
1715
1753
  else {
1716
1754
  if (callback && typeof callback === "function") {
1717
1755
  callback();
1718
1756
  }
1719
- DOMUtilsCore.window.cancelAnimationFrame(timer);
1757
+ DOMUtilsContext.windowApi.window.cancelAnimationFrame(timer);
1720
1758
  }
1721
1759
  }
1722
- timer = DOMUtilsCore.window.requestAnimationFrame(step);
1760
+ timer = DOMUtilsContext.windowApi.window.requestAnimationFrame(step);
1723
1761
  }
1724
1762
  /**
1725
1763
  * 淡出元素
@@ -1736,11 +1774,12 @@ var DOMUtils = (function () {
1736
1774
  * })
1737
1775
  */
1738
1776
  fadeOut(element, duration = 400, callback) {
1777
+ let DOMUtilsContext = this;
1739
1778
  if (element == null) {
1740
1779
  return;
1741
1780
  }
1742
1781
  if (typeof element === "string") {
1743
- element = DOMUtilsCore.document.querySelector(element);
1782
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1744
1783
  }
1745
1784
  element = element;
1746
1785
  element.style.opacity = "1";
@@ -1753,17 +1792,17 @@ var DOMUtils = (function () {
1753
1792
  element = element;
1754
1793
  element.style.opacity = Math.max(1 - progress / duration, 0).toString();
1755
1794
  if (progress < duration) {
1756
- DOMUtilsCore.window.requestAnimationFrame(step);
1795
+ DOMUtilsContext.windowApi.window.requestAnimationFrame(step);
1757
1796
  }
1758
1797
  else {
1759
1798
  element.style.display = "none";
1760
1799
  if (typeof callback === "function") {
1761
1800
  callback();
1762
1801
  }
1763
- DOMUtilsCore.window.cancelAnimationFrame(timer);
1802
+ DOMUtilsContext.windowApi.window.cancelAnimationFrame(timer);
1764
1803
  }
1765
1804
  }
1766
- timer = DOMUtilsCore.window.requestAnimationFrame(step);
1805
+ timer = DOMUtilsContext.windowApi.window.requestAnimationFrame(step);
1767
1806
  }
1768
1807
  /**
1769
1808
  * 切换元素的显示和隐藏状态
@@ -1776,7 +1815,7 @@ var DOMUtils = (function () {
1776
1815
  toggle(element) {
1777
1816
  let DOMUtilsContext = this;
1778
1817
  if (typeof element === "string") {
1779
- element = DOMUtilsCore.document.querySelector(element);
1818
+ element = DOMUtilsContext.windowApi.document.querySelector(element);
1780
1819
  }
1781
1820
  if (element == null) {
1782
1821
  return;
@@ -1805,6 +1844,7 @@ var DOMUtils = (function () {
1805
1844
  * DOMUtils.getTextBoundingRect(document.querySelector("input"));
1806
1845
  */
1807
1846
  getTextBoundingRect($input, selectionStart, selectionEnd) {
1847
+ let DOMUtilsContext = this;
1808
1848
  // Basic parameter validation
1809
1849
  if (!$input || !("value" in $input))
1810
1850
  return $input;
@@ -1874,7 +1914,7 @@ var DOMUtils = (function () {
1874
1914
  }
1875
1915
  // End of CSS variable checks
1876
1916
  // 不能为空,不然获取不到高度
1877
- let text = $input.value || "G", textLen = text.length, fakeClone = DOMUtilsCore.document.createElement("div");
1917
+ let text = $input.value || "G", textLen = text.length, fakeClone = DOMUtilsContext.windowApi.document.createElement("div");
1878
1918
  if (selectionStart > 0)
1879
1919
  appendPart(0, selectionStart);
1880
1920
  var fakeRange = appendPart(selectionStart, selectionEnd);
@@ -1888,7 +1928,7 @@ var DOMUtils = (function () {
1888
1928
  fakeClone.style.left = leftPos + "px";
1889
1929
  fakeClone.style.width = width + "px";
1890
1930
  fakeClone.style.height = height + "px";
1891
- DOMUtilsCore.document.body.appendChild(fakeClone);
1931
+ DOMUtilsContext.windowApi.document.body.appendChild(fakeClone);
1892
1932
  var returnValue = fakeRange.getBoundingClientRect(); //Get rect
1893
1933
  fakeClone?.parentNode?.removeChild(fakeClone); //Remove temp
1894
1934
  return returnValue;
@@ -1900,7 +1940,7 @@ var DOMUtils = (function () {
1900
1940
  * @returns
1901
1941
  */
1902
1942
  function appendPart(start, end) {
1903
- var span = DOMUtilsCore.document.createElement("span");
1943
+ var span = DOMUtilsContext.windowApi.document.createElement("span");
1904
1944
  span.style.cssText = cssDefaultStyles; //Force styles to prevent unexpected results
1905
1945
  span.textContent = text.substring(start, end);
1906
1946
  fakeClone.appendChild(span);
@@ -1908,7 +1948,7 @@ var DOMUtils = (function () {
1908
1948
  }
1909
1949
  // Computing offset position
1910
1950
  function getInputOffset() {
1911
- let body = DOMUtilsCore.document.body, win = DOMUtilsCore.document.defaultView, docElem = DOMUtilsCore.document.documentElement, $box = DOMUtilsCore.document.createElement("div");
1951
+ let body = DOMUtilsContext.windowApi.document.body, win = DOMUtilsContext.windowApi.document.defaultView, docElem = DOMUtilsContext.windowApi.document.documentElement, $box = DOMUtilsContext.windowApi.document.createElement("div");
1912
1952
  $box.style.paddingLeft = $box.style.width = "1px";
1913
1953
  body.appendChild($box);
1914
1954
  var isBoxModel = $box.offsetWidth == 2;
@@ -1931,7 +1971,7 @@ var DOMUtils = (function () {
1931
1971
  * @returns
1932
1972
  */
1933
1973
  function getInputCSS(prop, isNumber) {
1934
- var val = DOMUtilsCore.document
1974
+ var val = DOMUtilsContext.windowApi.document
1935
1975
  .defaultView.getComputedStyle($input, null)
1936
1976
  .getPropertyValue(prop);
1937
1977
  return isNumber ? parseFloat(val) : val;