layui自定义弹窗组件

Layui 自定义弹窗组件使用

本文方法依赖于Layui弹窗插件、Bootstrap整体布局,在此基础上遵循组件化开发原则自定义弹窗标题、内容格式开发高度自适应的弹窗组件,弹窗内容依旧使用iframe进行展示。

 

编写弹窗组件 popup.js

 

(function ($) {
    "use strict";
    let resizeTimer = null;
    let popup_id = 0;
    /*
     * Popup组件基于jquery,layUI, Bootstrap使用时要引用相应的js
     * param: {
     *      id: "popup" 防止唯一弹窗重复弹出 id不可重复
     *      url: "" 界面URL
     *      skin: 'layui-layer-rim' 皮肤定制、自定义样式
     *      offset: 'rb' 弹窗位置
     *      defaultWidth: 740 layer弹窗初始宽度
     *      time : 0 自动关闭所需毫秒
     *      anim: 0 弹出动画
     *      shadeClose: false 是否点击遮罩关闭
     *      shade : 0 遮罩
     * },
     *
     * offset支持:查看layUI弹窗offset属性
     * anim支持:查看layUI弹窗anim属性
     *
     *
     * 使用:$(document).popup(params);
     */
    function Popup(obj, params) {
        popup_id += 1;
        this.tiggerObj = obj;
        this.param = params || {};
        this.popupHeadInit()
        this.popupParamsInit()
        this.popupInitEvent();
    }
    Popup.prototype.popupHeadInit = function () {
        let self = this;
        let popup = "";
        popup += '

 

 

 

 

 

组件使用方法

  • 引入依赖项

 





 

  • 引入组件

 

PS:由于对JS组件化开发理解不是很深,由此出现的不严谨等问题欢迎批评指正。

你可能感兴趣的:(layui自定义弹窗组件)