jquery ui bootstrap 实现自定义风格


Posted in Javascript onNovember 14, 2014

首先看一下自定义提示框的效果图

alert 普通的提示当然可以自定义样式

jquery ui bootstrap 实现自定义风格

confrim 确认框 支持callback

//message 提示的信息 ,callback(true/false)回调函数

 window.shconfirm = function (message, callback) 

回调函数参数为 true/false

jquery ui bootstrap 实现自定义风格

prompt 邀请用户输入框

//message 提示的信息 ,callback(msg)回调函数(用户输入的消息), param:regex 输入的 正则验证,regexmsg 正则验证不通过的提示

 window.shprompt = function (message, callback, regex, regexmsg)

这里 message 为提示消息  *

    callback 为回调函数 *  回传参数为 用户输入的值(userinputmsg)

   regex 和 regexmsg 这2个参数是 选填项 用于验证用户输入,2个参数需要同时出现。不能单独使用。

jquery ui bootstrap 实现自定义风格

以下是js的实现,

当前这个是整合了 jquery ui 和 bootstrap 自己封装的一个 alert 提示。

(function () {

    var _shconfirm = {};

    var _shprompt = {};

    //闭包初始化;

    $(function () {

        $("#dialogalert").dialog({

            modal: true,

            autoOpen: false,

            show: {

                effect: "blind",

                duration: 500

            },

            hide: {

                effect: "explode",

                duration: 500

            },

            buttons: {

                确定: function () {

                    $(this).dialog("close");

                }

            }

        });

        $("#dialogconfirm").dialog({

            modal: true,

            autoOpen: false,

            show: {

                effect: "slide",

                duration: 500

            },

            hide: {

                effect: "drop",

                duration: 500

            },

            buttons: {

                确定: function () {

                    _shconfirm.shconfirmCallBack(true);

                    $(this).dialog("close");

                },

                取消: function () {

                    _shconfirm.shconfirmCallBack(false);

                    $(this).dialog("close");

                }

            }

        });

        $("#dialogprompt").dialog({

            modal: true,

            autoOpen: false,

            show: {

                effect: "blind",

                duration: 500

            },

            hide: {

                effect: "puff",

                duration: 500

            },

            buttons: {

                确定: function () {

                    if (_shprompt.shpromptObj.regex) {

                        if (!_shprompt.shpromptObj.regex.test($("#dialogprompt .text").val())) {

                            $("#dialogprompt .alert .promptmsg").html(_shprompt.shpromptObj.regexmsg);

                            $("#dialogprompt .alert").slideDown();

                            return;

                        } else {

                            $("#dialogprompt .alert").hide();

                        }

                    }

                    _shprompt.shpromptObj.callback($("#dialogprompt .text").val());

                    $(this).dialog("close");

                },

                取消: function () {

                    _shprompt.shpromptObj.callback($("#dialogprompt .text").val());

                    $(this).dialog("close");

                }

            }

        });

    });

    window.shalert = function (message) {

        $("#dialogalert .msgcontent").html(message);

        $("#dialogalert").dialog("open");

    };

    //message 提示的信息 ,callback(true/false)回调函数

    window.shconfirm = function (message, callback) {

        $("#dialogconfirm .msgcontent").html(message);

        $("#dialogconfirm").dialog("open");

        _shconfirm.shconfirmCallBack = callback;

    };

    //message 提示的信息 ,callback(msg)回调函数(用户输入的消息), param:regex 输入的 正则验证,regexmsg 正则验证不通过的提示

    window.shprompt = function (message, callback, regex, regexmsg) {

        $("#dialogprompt .msgcontent").html(message);

        $("#dialogprompt").dialog("open");

        _shprompt.shpromptObj = {

            callback: callback,

            regex: regex,

            regexmsg: regexmsg

        };

    }

})();

以下是调用代码

confirm //比可惜的是 js没法模拟 js脚本暂停 所以只能以回调函数的方式 来继续下一步操作。

function ShConfirm() {

            shconfirm("确定要这么做吗!", function (result) {

                if (result) {

                    alert("点击了确定");

                } else {

                    alert("点击了取消");

                }

            });

        }
  function ShPrompt() {

            shprompt("请问1+1等于几!", function (text) {

                alert("用户输入了:" + text);

            }, /^\d{1,}$/, "请输入数字!");

        }

shalert 就直接用就行了。和 js的alert 效果一样。

<input type="button" name="name" value="ShAlert" onclick="shalert('保存成功!');" />

    <input type="button" name="name" value="ShConfirm" onclick="ShConfirm()" />

    <input type="button" name="name" value="ShPrompt" onclick="ShPrompt()" />

源码我已经放在了 百度网盘上,欢迎大家学习交流。

源码下载地址

http://pan.baidu.com/s/1c00Cl36

这个控件其实还有可重构的部分,比如初始化方法等等这些都没有提取出来,因为任务紧所以先这么用着。

下一次优化时会处理这些问题。

原版风格是这样的,可以通过修改引用的css上实现 demo上有详细说明。

jquery ui bootstrap 实现自定义风格

jquery ui bootstrap 实现自定义风格

jquery ui bootstrap 实现自定义风格

以上就是本文全部内容了,怎么样,受益匪浅吧。

Javascript 相关文章推荐
淘宝搜索框效果实现分析
Mar 05 Javascript
jQuery EasyUI API 中文文档 - ProgressBar 进度条
Sep 29 Javascript
利用cookie记住背景颜色示例代码
Nov 04 Javascript
javascript实现2048游戏示例
May 04 Javascript
js实现头像图片切割缩放及无刷新上传图片的方法
Jul 17 Javascript
详解Node项目部署到云服务器上
Jul 12 Javascript
vue绑定事件后获取绑定事件中的this方法
Sep 15 Javascript
Node.js net模块功能及事件监听用法分析
Jan 05 Javascript
js贪心算法 钱币找零问题代码实例
Sep 11 Javascript
vue-cli 为项目设置别名的方法
Oct 15 Javascript
jquery检测上传文件大小示例
Apr 26 jQuery
使用element-ui +Vue 解决 table 里包含表单验证的问题
Jul 17 Javascript
使用node.js 制作网站前台后台
Nov 13 #Javascript
JavaScript 作用域链解析
Nov 13 #Javascript
jQuery $命名冲突解决方案汇总
Nov 13 #Javascript
js获取字符串最后一位方法汇总
Nov 13 #Javascript
实现js保留小数点后N位的代码
Nov 13 #Javascript
详谈jQuery中的this和$(this)
Nov 13 #Javascript
FF(火狐)浏览器无法执行window.close()解决方案
Nov 13 #Javascript
You might like
php+mysql 实现身份验证代码
2010/03/24 PHP
php 数组的指针操作实现代码
2011/02/08 PHP
基于php设计模式中单例模式的应用分析
2013/05/15 PHP
php数组使用规则分析
2015/02/27 PHP
PHP+Ajax验证码验证用户登录
2016/07/20 PHP
javascript:void(0)的真正含义实例分析
2008/08/20 Javascript
javascript Split方法,indexOf方法、lastIndexOf 方法和substring 方法
2009/03/21 Javascript
利用JQuery的load函数动态加载其它页面的内容的实现代码
2010/12/14 Javascript
document.all的一个比较完整的总结及案例
2013/01/31 Javascript
jQuery操作checkbox选择(list/table)
2013/04/07 Javascript
JS控件ASP.NET的treeview控件全选或者取消(示例代码)
2013/12/16 Javascript
jquery实现文本框数量加减功能的例子分享
2014/05/10 Javascript
jquery 将当前时间转换成yyyymmdd格式的实现方法
2016/06/01 Javascript
AngularJS基础 ng-mousemove 指令简单示例
2016/08/02 Javascript
详解如何构建Angular项目目录结构
2017/07/13 Javascript
Node.js引入UIBootstrap的方法示例
2018/05/11 Javascript
jquery实现的简单轮播图功能【适合新手】
2018/08/17 jQuery
vue-router实现嵌套路由的讲解
2019/01/19 Javascript
前端vue如何使用高德地图
2020/11/05 Javascript
Python中的文件和目录操作实现代码
2011/03/13 Python
详解如何使用Python编写vim插件
2017/11/28 Python
Python实现统计给定字符串中重复模式最高子串功能示例
2018/05/16 Python
python队列原理及实现方法示例
2019/11/27 Python
Python GUI编程学习笔记之tkinter事件绑定操作详解
2020/03/30 Python
Python提取视频中图片的示例(按帧、按秒)
2020/10/22 Python
深入剖析HTML5 内联框架iFrame
2016/05/04 HTML / CSS
介绍一下linux的文件权限
2012/02/15 面试题
简述进程的启动、终止的方式以及如何进行进程的查看
2013/07/12 面试题
大学生毕业鉴定
2014/01/31 职场文书
小学生开学感言
2014/02/28 职场文书
班级课外活动总结
2014/07/09 职场文书
个人房屋买卖协议书(范本)
2014/10/04 职场文书
建筑工地资料员岗位职责
2015/04/13 职场文书
捐款通知怎么写
2015/04/24 职场文书
辞职信怎么写?你都知道吗?
2019/06/24 职场文书
五年级作文之成长
2019/09/16 职场文书