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 相关文章推荐
地址栏上的一段语句,改变页面的风格。(教程)
Apr 02 Javascript
基于Jquery的标签智能验证实现代码
Dec 27 Javascript
cookie中的path与domain属性详解
Dec 18 Javascript
javascript跨域的4种方法和原理详解
Apr 08 Javascript
浅谈js原生拖放
Nov 21 Javascript
AngularJS中update两次出现$promise属性无法识别的解决方法
Jan 05 Javascript
element-ui 表格实现单元格可编辑的示例
Feb 26 Javascript
微信小程序云开发实现云数据库读写权限
May 17 Javascript
vue项目强制清除页面缓存的例子
Nov 06 Javascript
JavaScript实现多个物体同时运动
Mar 12 Javascript
JavaScript实现答题评分功能页面
Jun 24 Javascript
微信小程序input抖动问题的修复方法
Mar 03 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开发文档 会员收费1期
2012/08/14 PHP
php中定时计划任务的实现原理
2013/01/08 PHP
PHP生成图表pChart的示例解析
2020/07/31 PHP
解决 FireFox 下[使用event很麻烦] 的问题.
2006/08/22 Javascript
javascript 函数调用规则
2009/08/26 Javascript
通过JQuery将DIV的滚动条滚动到指定的位置方便自动定位
2014/05/05 Javascript
JavaScript版的TwoQueues缓存模型
2014/12/29 Javascript
深入理解js promise chain
2016/05/05 Javascript
JavaScript中windows.open()、windows.close()方法详解
2016/07/28 Javascript
在微信、支付宝、百度钱包实现点击返回按钮关闭当前页面和窗口的方法
2016/08/05 Javascript
jQuery轮播图实例详解
2018/08/15 jQuery
element-ui table行点击获取行索引(index)并利用索引更换行顺序
2020/02/27 Javascript
Python获取系统所有进程PID及进程名称的方法示例
2018/05/24 Python
Python使用jsonpath-rw模块处理Json对象操作示例
2018/07/31 Python
python 使用正则表达式按照多个空格分割字符的实例
2018/12/20 Python
python3 tkinter实现添加图片和文本
2019/11/26 Python
python中使用paramiko模块并实现远程连接服务器执行上传下载功能
2020/02/29 Python
Python如何操作docker redis过程解析
2020/08/10 Python
flask项目集成swagger的方法
2020/12/09 Python
关于探究python中sys.argv时遇到的问题详解
2021/02/23 Python
html5+css3进度条倒计时动画特效代码【推荐】
2016/03/08 HTML / CSS
Omio波兰:全欧洲低价大巴、火车和航班搜索和比价
2018/02/16 全球购物
Bluebella德国官网:英国性感内衣和睡衣品牌
2019/11/08 全球购物
Lancer Skincare官方网站:抗衰老皮肤护理
2020/11/20 全球购物
如何写出好的Java代码
2014/04/25 面试题
信息专业大学生自我评价分享
2014/01/17 职场文书
最经典的大学生职业生涯规划范文
2014/03/05 职场文书
高中课前三分钟演讲稿
2014/08/18 职场文书
迎新春趣味活动方案
2014/08/24 职场文书
入党介绍人意见2015
2015/06/01 职场文书
员工手册董事长致辞
2015/07/29 职场文书
生日宴会祝酒词
2015/08/10 职场文书
小学生大队委竞选稿
2015/11/20 职场文书
Go语言中的UTF-8实现
2021/04/26 Golang
一文搞懂Golang 时间和日期相关函数
2021/12/06 Golang
Python创建SQL数据库流程逐步讲解
2022/09/23 Python