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
javascript中的undefined 与 null 的区别  补充篇
Mar 17 Javascript
js统计录入文本框中字符的个数并加以限制不超过多少
May 23 Javascript
JavaScript显示当前文档最后修改日期的方法
Mar 19 Javascript
JS一个简单的注册页面实例
Sep 05 Javascript
详解Vue中一种简易路由传参办法
Sep 15 Javascript
Vue实现数字输入框中分割手机号码的示例
Oct 10 Javascript
js实现Tab选项卡切换效果
Jul 17 Javascript
使用vue脚手架(vue-cli)搭建一个项目详解
May 09 Javascript
构建Vue大型应用的10个最佳实践(小结)
Nov 07 Javascript
VueCli4项目配置反向代理proxy的方法步骤
May 17 Javascript
vue实现点击按钮“查看详情”弹窗展示详情列表操作
Sep 09 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
MYSQL 小技巧 -- LAST_INSERT_ID
2009/11/24 PHP
php实现用户在线时间统计详解
2011/10/08 PHP
SUN的《AJAX与J2EE》全文译了
2007/02/23 Javascript
Jquery插件 easyUI属性汇总
2011/01/19 Javascript
js 文本滚动效果的实例代码
2013/08/17 Javascript
浅析js设置控件的readonly与enabled属性问题
2013/12/25 Javascript
jQuery+CSS实现滑动的标签分栏切换效果
2015/12/17 Javascript
浅析JavaScript作用域链、执行上下文与闭包
2016/02/01 Javascript
jquery表单验证实例仿Toast提示效果
2017/03/03 Javascript
JavaScript的继承实现小结
2017/05/07 Javascript
Vue官方文档梳理之全局配置
2017/11/22 Javascript
Node实战之不同环境下配置文件使用教程
2018/01/02 Javascript
Vue实现购物车的全选、单选、显示商品价格代码实例
2019/05/06 Javascript
Node 搭建一个静态资源服务器的实现
2019/05/20 Javascript
使用eslint和githooks统一前端风格的技巧
2020/07/29 Javascript
基于Vue全局组件与局部组件的区别说明
2020/08/11 Javascript
vue实现简单计算商品价格
2020/09/14 Javascript
vant-ui AddressEdit地址编辑和van-area的用法说明
2020/11/03 Javascript
python中的函数用法入门教程
2014/09/02 Python
在Django中编写模版节点及注册标签的方法
2015/07/20 Python
python+pyqt实现右下角弹出框
2017/10/26 Python
python将文本中的空格替换为换行的方法
2018/03/19 Python
Python爬虫信息输入及页面的切换方法
2018/05/11 Python
python在TXT文件中按照某一字符串取出该字符串所在的行方法
2018/12/10 Python
pandas读取csv文件,分隔符参数sep的实例
2018/12/12 Python
python DataFrame 取差集实例
2019/01/30 Python
pandas实现excel中的数据透视表和Vlookup函数功能代码
2020/02/14 Python
详解CSS3+JS完美实现放大镜模式
2020/12/03 HTML / CSS
BSTN意大利:德国街头和运动文化高品质商店
2020/12/22 全球购物
新闻专业个人自我评价
2013/09/21 职场文书
个人找工作的自我评价
2013/10/17 职场文书
护士辞职信怎么写
2015/02/27 职场文书
村官个人总结范文
2015/03/03 职场文书
JavaScript+HTML实现学生信息管理系统
2021/04/20 Javascript
FP-growth算法发现频繁项集——构建FP树
2021/06/24 Python
MySQL事务操作的四大特性以及并发事务问题
2022/04/12 MySQL