Acme.BookStore.HttpApi.Host/node_modules/sweetalert2/src/utils/openPopup.js
(开头部分) 2KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
import * as dom from './dom/index.js'
import { swalClasses } from './classes.js'
import { fixScrollbar } from './scrollbarFix.js'
import { iOSfix } from './iosFix.js'
import { setAriaHidden } from './aria.js'
import globalState from '../globalState.js'
export const SHOW_CLASS_TIMEOUT = 10
/**
* Open popup, add necessary classes and styles, fix scrollbar
*
* @param params
*/
export const openPopup = (params) => {
const container = dom.getContainer()
const popup = dom.getPopup()
if (typeof params.willOpen === 'function') {
params.willOpen(popup)
}
const bodyStyles = window.getComputedStyle(document.body)
const initialBodyOverflow = bodyStyles.overflowY
addClasses(container, popup, params)
// scrolling is 'hidden' until animation is done, after that 'auto'
setTimeout(() => {
setScrollingVisibility(container, popup)
}, SHOW_CLASS_TIMEOUT)
if (dom.isModal()) {
fixScrollContainer(container, params.scrollbarPadding, initialBodyOverflow)
setAriaHidden()
}
if (!dom.isToast() && !globalState.previousActiveElement) {
globalState.previousActiveElement = document.activeElement
}
if (typeof params.didOpen === 'function') {
setTimeout(() => params.didOpen(popup))
}
dom.removeClass(container, swalClasses['no-transition'])
}
const swalOpenAnimationFinished = (event) => {
const popup = dom.getPopup()
if (event.target !== popup) {
return
}
const container = dom.getContainer()
popup.removeEventListener(dom.animationEndEvent, swalOpenAnimationFinished)
container.style.overflowY = 'auto'
}
const setScrollingVisibility = (container, popup) => {
if (dom.animationEndEvent && dom.hasCssAnimation(popup)) {
container.style.overflowY = 'hidden'
后面还有 36 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
