cocomodal弹框插件 (原创)

所属分类:UI-弹出层,工具提示

 16363  102  查看评论 (6)
分享到微信朋友圈
X
cocomodal弹框插件 (原创) ie兼容12

更新时间:2021-01-03 23:49:41

coco-modal

coco-modal是一个简单实用的javascript弹框插件, 兼容主流浏览器,兼容至ie9 (ie9没有动画效果)

用法

通过npm安装:

npm install coco-modal -S
import coco from 'coco-modal'
  
coco('hello world')
<script src="https://unpkg.com/coco-modal/coco-modal.min.js"></script>

基本用法

<style>
    body{
            margin:0
        }
        .root {
          width: 1000px;
          height: 2000px;
          background-color: #f1f1f2;
          margin: 0 auto; 
          }

</style>
<div class="root"></div>
<script src="https://unpkg.com/coco-modal/coco-modal.min.js"></script>
<script>
    window.CocoConfig = {
        buttonColor: '#e71e63'
    }
    let root = document.body.querySelector(".root");
    let count = 0;
    root.addEventListener("click", () => {
        let n = count++ % 3;
        n === 0 && coco("hello world");
        n === 1 && coco.alert("alert");
        n === 2 && coco.confirm("confirm");
    });
</script>

显示一个输入框

<style>
    body{
            margin:0
        }
        .root {
          width: 1000px;
          height: 2000px;
          background-color: #f1f1f2;
          margin: 0 auto;
        }
</style>
<div class="root"></div>
<script src="https://unpkg.com/coco-modal/coco-modal.min.js"></script>
<script>
    window.CocoConfig = {
        buttonColor: '#e71e63'
    }

    let root = document.body.querySelector(".root");
    root.addEventListener("click", () => {
        coco({
            title: "验证输入",
            inputAttrs: {
                placeholder: "your name",
            },
        }).onClose((cc, isOk, done) => {
            console.log(cc.closeType);
            if (isOk) {
                if (cc.inputValue.trim() === "") {
                    cc.setErrorText("输入不能为空!");
                } else {
                    cc.setErrorText("");
                    cc.inputEl.value = "";
                    done();
                }
            } else {
                done();
            }
        });
    });
</script>

window.CocoConfig 接收的参数作用所有的modal,单个modal的参数会覆盖全局参数

{
    el: null, // 一个dom节点或者选择器  el: '#login'
    maskClose: true,
    header: true,
    footer: true,
    title: '提示',
    text: '',
    width: '500px',
    top: '15vh',
    inputAttrs: false,
    escClose: true,
    okButton: true,
    cancelButton: true,
    okText: '确定',
    cancelText: '取消',
    closeButton: true,
    html: '',
    zIndexOfModal: 1995,
    zIndexOfMask: 2008,
    zIndexOfActiveModal: 2020,
    autoFocusOkButton: true,
    autoFocusInput: true,
    fullScreen: false,
    borderRadius: '6px',
    blur: false,
    buttonColor: '#4285ff',
    onMount() {},
    hooks: {
        open() {},
        opened() {},
        close() {},
        closed() {}
    },
    destroy: false,
    animation: true
}
相关插件-弹出层,工具提示

jquery弹出框插件dialogbox

jquery弹出框插件dialogbox
  弹出层
 54040  317

jquery 弹出层

多功能表单弹出层插件,可自定义,附带可运行
  弹出层
 98586  718

jquery鼠标悬停滑动切换特效

jquery鼠标悬停滑动切换特效
  弹出层
 33375  387

四种简单弹窗 — 自己配置弹窗

四种弹出方式,可以非常简单的通过修改css来定义自己喜欢的样式。
  弹出层
 53164  423

讨论这个项目(6)回答他人问题或分享插件使用方法奖励jQ币 评论用户自律公约

    xue-shuai 0
    2021/6/24 14:42:51
    有没有更详细的文档,比如每个参数的作用 回复
    BLUEblue? 0
    2021/5/31 14:36:04
    谢艳军 0
    2021/1/4 9:55:59
    会阻塞吗?
        panyi0
        2021/1/7 15:03:37
        不会
        13752359760
        2021/3/27 22:09:56
        阻塞什么
        BLUEblue?0
        2021/5/31 14:36:24
        什么意思
    回复
😃
  • 😀
  • 😉
  • 😥
  • 😵
  • 😫
  • 😘
  • 😡
  • 👍
  • 🌹
  • 👏
  • 🍺
  • 🍉
  • 🌙
  • 💖
  • 💔
😃
  • 😀
  • 😉
  • 😥
  • 😵
  • 😫
  • 😘
  • 😡
  • 👍
  • 🌹
  • 👏
  • 🍺
  • 🍉
  • 🌙
  • 💖
  • 💔
取消回复