缘起
我们知道在JQ中,是允许我们自定义一些插件与扩展的。定义的方式也比较简单,采用$.extend就行,那么下面就来看看在JQ中自定义一个插件的实例
JQuery如何封装一个组件
效果
我们先来看封装好的组件的效果图,这是一个根据组织机构选择人员的组件。
实现原理
我们先定义一个DbwSelectUser函数
DbwSelectUser : function (options) { var opt = $.extend({ //是否多选:true(多选),false(单选) multi:true, offset:'auto', //layerIndex:弹出窗口索引 //users数据结构:[{userId:'', userName:'', departId:'', departName:''}] onOk:function(layerIndex, users){} }, options || {}); $.LoadIframe({ title: '请选择人员', content: 'assets/js/extend/jquery/userSelect/user-select.jsp"htmlcode">LoadIframe: function (options, fullScreen) { /*layer的默认配置*/ var _default = { type: 2, title: '系统窗口', content: '', area: 'auto', shadeClose: false, maxmin: true, maxWidth: 600, maxHeight: 500 }, o = $.extend(_default, options || {}), index = layui.layer.open(o); if (fullScreen) { //窗口全屏 layui.layer.full(index); } return index; }使用
$.DbwSelectUser({ //offset:弹出框显示位置(空或auto:居中,rb:右下角) offset:'rb', //选好人员后弹出框的“确定”按钮单击事件回调函数 onOk:function(layerIndex, users) { //layerIndex:弹出框layer的索引 //users数据结构:[{userId:'', userName:'', departId:'', departName:''},{....}] //以下编写接收到所选人员后自己的业务逻辑 } });可以看到其实是对layui的一个弹窗进行了封装,其中$.extend是JQuery里面扩展插件的一个方法,会用后面的同名变量替换前面的。在上诉代码中的作用是用来如果你没有传某个属性,就用默认的属性。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
标签:
jquery,组件
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
白云城资源网 Copyright www.dyhadc.com
暂无“jquery自定义组件实例详解”评论...
更新日志
2024年12月27日
2024年12月27日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]