1.2.2 • Published 3 months ago

ease-popup v1.2.2

Weekly downloads
-
License
MIT
Repository
github
Last release
3 months ago

ease-popup

一个简单、方便、有用的 JavaScript 弹窗插件,基于 floating-ui 制作

文档

点击查看文档

介绍

  1. 这是一个简单、方便、好用的 js 弹窗插件,可以作为 tooltip 提示框、dialog 对话框等使用,也可以在此基础上自由封装改造。
  2. 本弹窗插件基于 floating-ui 制作,弹窗可选位置齐全,功能相对完善,配置简单。
  3. 弹窗使用 html5 dialog 元素生成,也支持使用 div 元素,兼容性较好。
  4. 弹窗只提供基础样式,不用引入额外的 CSS 文件,想要其他样式可以自行定义编写。

安装

推荐使用 npm包 的方式进行安装

npm install ease-popup

或者也可以使用 <script> 标签引入

<script src="https://cdn.jsdelivr.net/gh/wzCoding/ease-popup@v1.2.0/dist/EasePopup.min.js"></script>

使用

import EasePopup from 'ease-popup'

// 或者

const EasePopup = require('ease-popup')

示例

以下是插件的简单使用方式

HTML 部分 // 弹窗容器也可以换成 <dialog> 元素

<button id="popupBtn">点我</button>
<div class="ease-popup"> 
    <div class="ease-popup-content">这是一个弹窗</div>
</div>

JavaScript 部分

const btn = document.getElementById('popupBtn')
const popup = document.querySelector('.ease-popup')


const instance = new EasePopup({
    "target":btn,
    "popup":popup,
    "direction":"top",
})

instance.update() // 更新弹窗配置
instance.show() // 显示弹窗
instance.showModal() // 显示弹窗并显示layer层
instance.hide() // 隐藏弹窗(隐藏layer层)
instance.destroy() // 销毁弹窗

options选项参数

参数名类型默认值说明
targetElement Stringnull弹窗触发元素
popupElement Stringnull弹窗元素
directionString'bottom'弹窗popup显示的方向,根据placement参数的不同而变化
placementString'outside'弹窗popup的放置部位(位于目标元素的外部或者内部)
widthNumber String'auto'弹窗宽度
contentString' '弹窗popup中要显示的内容
containerString Object'body'弹窗触发元素target所在的容器,确定容器可以防止popup溢出边界
themeString Object'light'弹窗popup的主题(设置文字与背景色,默认提供 'light' 与 'dark' 两种主题,也可以传入{background:'',color:''}对象
targetGapNumber15弹窗popup与目标元素(触发元素)的间距
boundryGapNumber5弹窗popup与容器边缘的间距
offsetArray0,0弹窗popup相对所在位置的偏移量 x,y
needArrowBooleantrue弹窗popup是否需要小箭头
selfClickBooleantrue弹窗popup自身是否可以点击
closeByOutSideBooleantrue是否在点击弹窗popup以外的区域时关闭popup
singleOpenBooleantrue是否同时只打开一个弹窗popup
fullScreenBooleanfalselayer层是否全屏
onShowFunctionnull弹窗popup显示时的回调函数
onHideFunctionnull弹窗popup隐藏时的回调函数
onDestroyFunctionnull弹窗popup销毁时的回调函数

插件只提供了基础的弹窗展示、隐藏、销毁功能,弹窗的触发方式、弹窗内部结构等可由使用者自行定义。

1.2.2

3 months ago

1.2.0

3 months ago

1.2.1

3 months ago

1.1.9

3 months ago

1.1.8

3 months ago

1.1.7

3 months ago

1.1.6

3 months ago

1.1.1

3 months ago

1.1.5

3 months ago

1.1.4

3 months ago

1.1.3

3 months ago

1.1.2

3 months ago

1.1.0

3 months ago

1.0.9

3 months ago

1.0.8

3 months ago

1.0.7

3 months ago

1.0.6

3 months ago

1.0.5

3 months ago

1.0.4

3 months ago

1.0.3

3 months ago

1.0.2

3 months ago

1.0.1

3 months ago

1.0.0

3 months ago