@whitesev/pops 3.3.2 → 3.3.3
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 +112 -50
- package/dist/index.amd.js.map +1 -1
- package/dist/index.amd.min.js +1 -1
- package/dist/index.amd.min.js.map +1 -1
- package/dist/index.cjs.js +112 -50
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.cjs.min.js +1 -1
- package/dist/index.cjs.min.js.map +1 -1
- package/dist/index.esm.js +112 -50
- package/dist/index.esm.js.map +1 -1
- package/dist/index.esm.min.js +1 -1
- package/dist/index.esm.min.js.map +1 -1
- package/dist/index.iife.js +112 -50
- package/dist/index.iife.js.map +1 -1
- package/dist/index.iife.min.js +1 -1
- package/dist/index.iife.min.js.map +1 -1
- package/dist/index.system.js +112 -50
- package/dist/index.system.js.map +1 -1
- package/dist/index.system.min.js +1 -1
- package/dist/index.system.min.js.map +1 -1
- package/dist/index.umd.js +112 -50
- package/dist/index.umd.js.map +1 -1
- package/dist/index.umd.min.js +1 -1
- package/dist/index.umd.min.js.map +1 -1
- package/dist/types/src/Pops.d.ts +23 -10
- package/dist/types/src/utils/PopsDOMUtils.d.ts +71 -21
- package/dist/types/src/utils/PopsUtils.d.ts +5 -0
- package/package.json +1 -1
- package/src/components/iframe/index.ts +2 -3
- package/src/utils/PopsDOMUtils.ts +189 -67
- package/src/utils/PopsUtils.ts +7 -0
package/dist/types/src/Pops.d.ts
CHANGED
|
@@ -85,12 +85,13 @@ declare class Pops {
|
|
|
85
85
|
};
|
|
86
86
|
/** 禁止滚动 */
|
|
87
87
|
forbiddenScroll: {
|
|
88
|
-
event(event: Event):
|
|
88
|
+
event(event: Event): false;
|
|
89
89
|
};
|
|
90
90
|
/** pops使用的工具类 */
|
|
91
91
|
Utils: {
|
|
92
92
|
isWin(target: any): boolean;
|
|
93
93
|
isDOM(target: any): boolean;
|
|
94
|
+
isNodeList($ele: any): $ele is any[] | NodeList;
|
|
94
95
|
delete(target: any, propName: any): void;
|
|
95
96
|
assign<T1, T2 extends object, T3 extends boolean>(target: T1, source: T2, isAdd?: T3 | undefined): T3 extends true ? T1 & T2 : T1;
|
|
96
97
|
getRandomGUID(): string;
|
|
@@ -172,15 +173,27 @@ declare class Pops {
|
|
|
172
173
|
onReady<T extends (...args: any[]) => any>(callback: T): void;
|
|
173
174
|
emit(element: HTMLElement | string | NodeList | any[] | Window | Document, eventType: string | string[], details?: object, useDispatchToEmitEvent?: boolean): void;
|
|
174
175
|
emit(element: HTMLElement | string | NodeList | any[] | Window | Document, eventType: import("./types/PopsDOMUtilsEventType").PopsDOMUtils_EventType | import("./types/PopsDOMUtilsEventType").PopsDOMUtils_EventType[], details?: object, useDispatchToEmitEvent?: boolean): void;
|
|
175
|
-
click(element: HTMLElement | string | Window, handler?: (event: import("./types/PopsDOMUtilsEventType").PopsDOMUtils_Event["click"]) => void, details?: any, useDispatchToEmitEvent?: boolean):
|
|
176
|
-
blur(element: HTMLElement | string | Window, handler?: (event: import("./types/PopsDOMUtilsEventType").PopsDOMUtils_Event["blur"]) => void, details?: object, useDispatchToEmitEvent?: boolean):
|
|
177
|
-
focus(element: HTMLElement | string | Window, handler?: (event: import("./types/PopsDOMUtilsEventType").PopsDOMUtils_Event["focus"]) => void, details?: object, useDispatchToEmitEvent?: boolean):
|
|
178
|
-
onHover(element:
|
|
179
|
-
onKeyup(target: HTMLElement | string | Window | typeof globalThis, handler: (event: import("./types/PopsDOMUtilsEventType").PopsDOMUtils_Event["keyup"]) => void, option?: boolean | AddEventListenerOptions):
|
|
180
|
-
onKeydown(target: HTMLElement | Window | typeof globalThis | string, handler: (event: import("./types/PopsDOMUtilsEventType").PopsDOMUtils_Event["keydown"]) => void, option?: boolean | AddEventListenerOptions):
|
|
181
|
-
onKeypress(target: HTMLElement | Window | typeof globalThis | string, handler: (event: import("./types/PopsDOMUtilsEventType").PopsDOMUtils_Event["keypress"]) => void, option?: boolean | AddEventListenerOptions):
|
|
182
|
-
preventEvent(event: Event):
|
|
183
|
-
preventEvent(
|
|
176
|
+
click(element: HTMLElement | string | Window, handler?: (event: import("./types/PopsDOMUtilsEventType").PopsDOMUtils_Event["click"]) => void, details?: any, useDispatchToEmitEvent?: boolean): import("./types/PopsDOMUtilsEventType").PopsDOMUtilsAddEventListenerResult | undefined;
|
|
177
|
+
blur(element: HTMLElement | string | Window, handler?: (event: import("./types/PopsDOMUtilsEventType").PopsDOMUtils_Event["blur"]) => void, details?: object, useDispatchToEmitEvent?: boolean): import("./types/PopsDOMUtilsEventType").PopsDOMUtilsAddEventListenerResult | undefined;
|
|
178
|
+
focus(element: HTMLElement | string | Window, handler?: (event: import("./types/PopsDOMUtilsEventType").PopsDOMUtils_Event["focus"]) => void, details?: object, useDispatchToEmitEvent?: boolean): import("./types/PopsDOMUtilsEventType").PopsDOMUtilsAddEventListenerResult | undefined;
|
|
179
|
+
onHover(element: import("./types/PopsDOMUtilsEventType").PopsDOMUtilsTargetElementType | Element | DocumentFragment | Node, handler: (this: HTMLElement, event: import("./types/PopsDOMUtilsEventType").PopsDOMUtils_Event["hover"]) => void, option?: boolean | import("./types/PopsDOMUtilsEventType").PopsDOMUtilsEventListenerOption): import("./types/PopsDOMUtilsEventType").PopsDOMUtilsAddEventListenerResult | undefined;
|
|
180
|
+
onKeyup(target: HTMLElement | string | Window | typeof globalThis, handler: (event: import("./types/PopsDOMUtilsEventType").PopsDOMUtils_Event["keyup"]) => void, option?: boolean | AddEventListenerOptions): import("./types/PopsDOMUtilsEventType").PopsDOMUtilsAddEventListenerResult | undefined;
|
|
181
|
+
onKeydown(target: HTMLElement | Window | typeof globalThis | string, handler: (event: import("./types/PopsDOMUtilsEventType").PopsDOMUtils_Event["keydown"]) => void, option?: boolean | AddEventListenerOptions): import("./types/PopsDOMUtilsEventType").PopsDOMUtilsAddEventListenerResult | undefined;
|
|
182
|
+
onKeypress(target: HTMLElement | Window | typeof globalThis | string, handler: (event: import("./types/PopsDOMUtilsEventType").PopsDOMUtils_Event["keypress"]) => void, option?: boolean | AddEventListenerOptions): import("./types/PopsDOMUtilsEventType").PopsDOMUtilsAddEventListenerResult | undefined;
|
|
183
|
+
preventEvent(event: Event): false;
|
|
184
|
+
preventEvent<T extends boolean>(event: Event, onlyStopPropagation: T): T extends true ? void : false;
|
|
185
|
+
preventEvent($el: HTMLElement, eventNameList: string | string[], option?: {
|
|
186
|
+
capture?: boolean;
|
|
187
|
+
onlyStopPropagation?: boolean;
|
|
188
|
+
}): {
|
|
189
|
+
off(): void;
|
|
190
|
+
};
|
|
191
|
+
preventEvent($el: HTMLElement, eventNameList: string | string[], selector: string | string[] | null | undefined, option?: {
|
|
192
|
+
capture?: boolean;
|
|
193
|
+
onlyStopPropagation?: boolean;
|
|
194
|
+
}): {
|
|
195
|
+
off(): void;
|
|
196
|
+
};
|
|
184
197
|
selector<K extends keyof HTMLElementTagNameMap>(selector: K): HTMLElementTagNameMap[K] | undefined;
|
|
185
198
|
selector<E extends Element = Element>(selector: string): E | undefined;
|
|
186
199
|
selectorAll<K extends keyof HTMLElementTagNameMap>(selector: K): HTMLElementTagNameMap[K][];
|
|
@@ -211,7 +211,7 @@ declare class PopsDOMUtilsEvent {
|
|
|
211
211
|
* console.log("触发click事件成功")
|
|
212
212
|
* })
|
|
213
213
|
* */
|
|
214
|
-
click(element: HTMLElement | string | Window, handler?: (event: PopsDOMUtils_Event["click"]) => void, details?: any, useDispatchToEmitEvent?: boolean):
|
|
214
|
+
click(element: HTMLElement | string | Window, handler?: (event: PopsDOMUtils_Event["click"]) => void, details?: any, useDispatchToEmitEvent?: boolean): PopsDOMUtilsAddEventListenerResult | undefined;
|
|
215
215
|
/**
|
|
216
216
|
* 绑定或触发元素的blur事件
|
|
217
217
|
* @param element 目标元素
|
|
@@ -226,7 +226,7 @@ declare class PopsDOMUtilsEvent {
|
|
|
226
226
|
* console.log("触发blur事件成功")
|
|
227
227
|
* })
|
|
228
228
|
* */
|
|
229
|
-
blur(element: HTMLElement | string | Window, handler?: (event: PopsDOMUtils_Event["blur"]) => void, details?: object, useDispatchToEmitEvent?: boolean):
|
|
229
|
+
blur(element: HTMLElement | string | Window, handler?: (event: PopsDOMUtils_Event["blur"]) => void, details?: object, useDispatchToEmitEvent?: boolean): PopsDOMUtilsAddEventListenerResult | undefined;
|
|
230
230
|
/**
|
|
231
231
|
* 绑定或触发元素的focus事件
|
|
232
232
|
* @param element 目标元素
|
|
@@ -241,7 +241,7 @@ declare class PopsDOMUtilsEvent {
|
|
|
241
241
|
* console.log("触发focus事件成功")
|
|
242
242
|
* })
|
|
243
243
|
* */
|
|
244
|
-
focus(element: HTMLElement | string | Window, handler?: (event: PopsDOMUtils_Event["focus"]) => void, details?: object, useDispatchToEmitEvent?: boolean):
|
|
244
|
+
focus(element: HTMLElement | string | Window, handler?: (event: PopsDOMUtils_Event["focus"]) => void, details?: object, useDispatchToEmitEvent?: boolean): PopsDOMUtilsAddEventListenerResult | undefined;
|
|
245
245
|
/**
|
|
246
246
|
* 当鼠标移入或移出元素时触发事件
|
|
247
247
|
* @param element 当前元素
|
|
@@ -256,7 +256,7 @@ declare class PopsDOMUtilsEvent {
|
|
|
256
256
|
* console.log("移入/移除");
|
|
257
257
|
* })
|
|
258
258
|
*/
|
|
259
|
-
onHover(element:
|
|
259
|
+
onHover(element: PopsDOMUtilsTargetElementType | Element | DocumentFragment | Node, handler: (this: HTMLElement, event: PopsDOMUtils_Event["hover"]) => void, option?: boolean | PopsDOMUtilsEventListenerOption): PopsDOMUtilsAddEventListenerResult | undefined;
|
|
260
260
|
/**
|
|
261
261
|
* 当按键松开时触发事件
|
|
262
262
|
* keydown - > keypress - > keyup
|
|
@@ -272,7 +272,7 @@ declare class PopsDOMUtilsEvent {
|
|
|
272
272
|
* console.log("按键松开");
|
|
273
273
|
* })
|
|
274
274
|
*/
|
|
275
|
-
onKeyup(target: HTMLElement | string | Window | typeof globalThis, handler: (event: PopsDOMUtils_Event["keyup"]) => void, option?: boolean | AddEventListenerOptions):
|
|
275
|
+
onKeyup(target: HTMLElement | string | Window | typeof globalThis, handler: (event: PopsDOMUtils_Event["keyup"]) => void, option?: boolean | AddEventListenerOptions): PopsDOMUtilsAddEventListenerResult | undefined;
|
|
276
276
|
/**
|
|
277
277
|
* 当按键按下时触发事件
|
|
278
278
|
* keydown - > keypress - > keyup
|
|
@@ -288,7 +288,7 @@ declare class PopsDOMUtilsEvent {
|
|
|
288
288
|
* console.log("按键按下");
|
|
289
289
|
* })
|
|
290
290
|
*/
|
|
291
|
-
onKeydown(target: HTMLElement | Window | typeof globalThis | string, handler: (event: PopsDOMUtils_Event["keydown"]) => void, option?: boolean | AddEventListenerOptions):
|
|
291
|
+
onKeydown(target: HTMLElement | Window | typeof globalThis | string, handler: (event: PopsDOMUtils_Event["keydown"]) => void, option?: boolean | AddEventListenerOptions): PopsDOMUtilsAddEventListenerResult | undefined;
|
|
292
292
|
/**
|
|
293
293
|
* 当按键按下时触发事件
|
|
294
294
|
* keydown - > keypress - > keyup
|
|
@@ -304,29 +304,79 @@ declare class PopsDOMUtilsEvent {
|
|
|
304
304
|
* console.log("按键按下");
|
|
305
305
|
* })
|
|
306
306
|
*/
|
|
307
|
-
onKeypress(target: HTMLElement | Window | typeof globalThis | string, handler: (event: PopsDOMUtils_Event["keypress"]) => void, option?: boolean | AddEventListenerOptions):
|
|
307
|
+
onKeypress(target: HTMLElement | Window | typeof globalThis | string, handler: (event: PopsDOMUtils_Event["keypress"]) => void, option?: boolean | AddEventListenerOptions): PopsDOMUtilsAddEventListenerResult | undefined;
|
|
308
308
|
/**
|
|
309
309
|
* 阻止事件传递
|
|
310
|
-
*
|
|
311
|
-
*
|
|
312
|
-
*
|
|
313
|
-
*
|
|
314
|
-
*
|
|
310
|
+
*
|
|
311
|
+
* + `.preventDefault()`: 阻止事件的默认行为发生。例如,当点击一个链接时,浏览器会默认打开链接的URL,或者在输入框内输入文字
|
|
312
|
+
* + `.stopPropagation()`: 停止事件的传播,阻止它继续向更上层的元素冒泡,事件将不会再传播给其他的元素
|
|
313
|
+
* + `.stopImmediatePropagation()`: 阻止事件传播,并且还能阻止元素上的其他事件处理程序被触发
|
|
314
|
+
* @param event 要阻止传递的事件
|
|
315
315
|
* @example
|
|
316
|
-
*
|
|
316
|
+
* DOMUtils.preventEvent(event);
|
|
317
317
|
*/
|
|
318
|
-
preventEvent(event: Event):
|
|
318
|
+
preventEvent(event: Event): false;
|
|
319
319
|
/**
|
|
320
320
|
* 阻止事件传递
|
|
321
|
-
* @param
|
|
322
|
-
* @param
|
|
323
|
-
* @
|
|
321
|
+
* @param event 要阻止传递的事件
|
|
322
|
+
* @param onlyStopPropagation (可选)是否仅阻止事件的传播,默认false,不调用`.preventDefault()`
|
|
323
|
+
* @example
|
|
324
|
+
* DOMUtils.preventEvent(event, true);
|
|
325
|
+
*/
|
|
326
|
+
preventEvent<T extends boolean>(event: Event, onlyStopPropagation: T): T extends true ? void : false;
|
|
327
|
+
/**
|
|
328
|
+
* 通过监听事件来主动阻止事件的传递
|
|
329
|
+
* @param $el 要进行处理的元素
|
|
330
|
+
* @param eventNameList 要阻止的事件名|列表
|
|
331
|
+
* @param option (可选)配置项
|
|
332
|
+
* @example
|
|
333
|
+
* DOMUtils.preventEvent(document.querySelector("a"), "click")
|
|
334
|
+
* @example
|
|
335
|
+
* DOMUtils.preventEvent(document.querySelector("a"), "click", undefined, {
|
|
336
|
+
* capture: true,
|
|
337
|
+
* })
|
|
338
|
+
* @example
|
|
339
|
+
* DOMUtils.preventEvent(document, "click", "a.xxx", {
|
|
340
|
+
* capture: true,
|
|
341
|
+
* onlyStopPropagation: true,
|
|
342
|
+
* })
|
|
343
|
+
*/
|
|
344
|
+
preventEvent($el: HTMLElement, eventNameList: string | string[], option?: {
|
|
345
|
+
/** (可选)是否捕获,默认false */
|
|
346
|
+
capture?: boolean;
|
|
347
|
+
/** (可选)是否仅阻止事件的传播,默认false,不调用`.preventDefault()` */
|
|
348
|
+
onlyStopPropagation?: boolean;
|
|
349
|
+
}): {
|
|
350
|
+
/** 移除监听事件 */
|
|
351
|
+
off(): void;
|
|
352
|
+
};
|
|
353
|
+
/**
|
|
354
|
+
* 通过监听事件来主动阻止事件的传递
|
|
355
|
+
* @param $el 要进行处理的元素
|
|
356
|
+
* @param eventNameList 要阻止的事件名|列表
|
|
357
|
+
* @param selector 子元素选择器
|
|
358
|
+
* @param option (可选)配置项
|
|
324
359
|
* @example
|
|
325
|
-
*
|
|
360
|
+
* DOMUtils.preventEvent(document.querySelector("a"), "click")
|
|
326
361
|
* @example
|
|
327
|
-
*
|
|
362
|
+
* DOMUtils.preventEvent(document.querySelector("a"), "click", undefined, {
|
|
363
|
+
* capture: true,
|
|
364
|
+
* })
|
|
365
|
+
* @example
|
|
366
|
+
* DOMUtils.preventEvent(document, "click", "a.xxx", {
|
|
367
|
+
* capture: true,
|
|
368
|
+
* onlyStopPropagation: true,
|
|
369
|
+
* })
|
|
328
370
|
*/
|
|
329
|
-
preventEvent(
|
|
371
|
+
preventEvent($el: HTMLElement, eventNameList: string | string[], selector: string | string[] | null | undefined, option?: {
|
|
372
|
+
/** (可选)是否捕获,默认false */
|
|
373
|
+
capture?: boolean;
|
|
374
|
+
/** (可选)是否仅阻止事件的传播,默认false,不调用`.preventDefault()` */
|
|
375
|
+
onlyStopPropagation?: boolean;
|
|
376
|
+
}): {
|
|
377
|
+
/** 移除监听事件 */
|
|
378
|
+
off(): void;
|
|
379
|
+
};
|
|
330
380
|
/**
|
|
331
381
|
* 选择器,可使用以下的额外语法
|
|
332
382
|
*
|
|
@@ -662,7 +712,7 @@ declare class PopsDOMUtils extends PopsDOMUtilsEvent {
|
|
|
662
712
|
* @param content 子元素或HTML字符串
|
|
663
713
|
* @example
|
|
664
714
|
* // 元素a.xx的内部末尾添加一个元素
|
|
665
|
-
* DOMUtils.append(document.querySelector("a.xx"),document.querySelector("b.xx"))
|
|
715
|
+
* DOMUtils.append(document.querySelector("a.xx"), document.querySelector("b.xx"))
|
|
666
716
|
* DOMUtils.append("a.xx","'<b class="xx"></b>")
|
|
667
717
|
* */
|
|
668
718
|
append(element: Element | Node | ShadowRoot | HTMLElement | string, content: HTMLElement | string | (HTMLElement | string | Element)[] | NodeList): void;
|
package/package.json
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
|
-
import { PopsCore } from "../../PopsCore";
|
|
2
1
|
import { GlobalConfig } from "../../config/GlobalConfig";
|
|
3
2
|
import { PopsElementHandler } from "../../handler/PopsElementHandler";
|
|
4
3
|
import { PopsHandler } from "../../handler/PopsHandler";
|
|
5
4
|
import { PopsCSS } from "../../PopsCSS";
|
|
6
5
|
import { PopsInstData } from "../../PopsInst";
|
|
6
|
+
import type { PopsType } from "../../types/main";
|
|
7
7
|
import { popsDOMUtils } from "../../utils/PopsDOMUtils";
|
|
8
8
|
import { PopsInstanceUtils } from "../../utils/PopsInstanceUtils";
|
|
9
9
|
import { popsUtils } from "../../utils/PopsUtils";
|
|
10
10
|
import { PopsIframeDefaultConfig } from "./defaultConfig";
|
|
11
11
|
import type { PopsIframeClickEventConfig, PopsIframeConfig } from "./types";
|
|
12
|
-
import type { PopsType } from "../../types/main";
|
|
13
12
|
|
|
14
13
|
export const PopsIframe = {
|
|
15
14
|
init(__config__: PopsIframeConfig) {
|
|
@@ -102,7 +101,7 @@ export const PopsIframe = {
|
|
|
102
101
|
$headerBtnMax: headerMaxBtnElement,
|
|
103
102
|
$headerBtnMise: headerMiseBtnElement,
|
|
104
103
|
} = PopsHandler.handleQueryElement($anim, popsType);
|
|
105
|
-
let $iframeContainer =
|
|
104
|
+
let $iframeContainer = popsDOMUtils.selector<HTMLDivElement>(".pops-iframe-container");
|
|
106
105
|
if (!$iframeContainer) {
|
|
107
106
|
$iframeContainer = popsDOMUtils.createElement("div", {
|
|
108
107
|
className: "pops-iframe-container",
|