jquery模拟alert的弹窗插件


Posted in Javascript onJuly 31, 2015

演示地址:

http://runjs.cn/detail/miwszbne

分享说明:

第N次造轮子了,只为最简单的调用,jquery模拟alert和confirm的弹窗插件

调用方法:

$.alert('your message');

$.alert('your message',function(){
 $.alert('click ok button')
});

$.confirm('your message');

$.confirm('your message',function(result){
 if(result){
  $.alert('click ok button')
 }else{
  $.alert('click cancel button')
 }
})

为了调用方便,直接将css样式写在了js中,兼容性方面只测试了IE8和chrome以及safari,都还可以。
IE8没问题想必其他现代浏览器应该也是OK的。

(function ($) {
  $.extend({
    _isalert:0,
    alert:function(){
      if(arguments.length){
        $._isalert=1;
        $.confirm.apply($,arguments);
      }
    },
    confirm:function(){
      var args=arguments;
      if(args.length&&(typeof args[0] == 'string')&&!$('#alert_overlay').length){
        if(!$('#alert_style').length) $('body').append('<style id="alert_style" type="text/css">#alert_overlay{position:fixed;width:100%;height:100%;top:0;left:0;z-index:999;background:#000;filter:alpha(opacity=5);opacity:.05}#alert_msg{position:fixed;width:400px;margin-left:-201px;left:50%;top:20%;z-index:1000;border:1px solid #aaa;box-shadow:0 2px 15px rgba(0,0,0,.3);background:#fff}#alert_content{padding:20px;font-size:14px;text-align:left}#alert_buttons{padding:10px;border-top:1px solid #aaa;text-align:right;box-shadow:0 1px 0 #fff inset;background:#eee;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}#alert_buttons .alert_btn{padding:5px 12px;margin:0 2px;border:1px solid #aaa;background:#eee;cursor:pointer;border-radius:2px;font-size:14px;outline:0;-webkit-appearance:none}#alert_buttons .alert_btn:hover{border-color:#bbb;box-shadow:0 1px 2px #aaa;background:#eaeaea}#alert_buttons .alert_btn:active{box-shadow:0 1px 2px #aaa inset;background:#e6e6e6}</style>');
        var dialog=$('<div id="alert_overlay"></div><div id="alert_msg"><div id="alert_content">'+args[0]+'</div><div id="alert_buttons"><button class="alert_btn alert_btn_ok">确定</button><button class="alert_btn alert_btn_cancel">取消</button></div></div>');
        if($._isalert) dialog.find('.alert_btn_cancel').hide();
        dialog.on('contextmenu',function(){
          return !1;
        }).on('click','.alert_btn_ok',function(){
          dialog.remove();
          if(typeof args[1]=='function') args[1].call($,!0);
        }).on('click','.alert_btn_cancel',function(){
          dialog.remove();
          if(typeof args[1]=='function') args[1].call($,!1);
        }).appendTo('body');
      }
      $._isalert=0;
    }
  });
})($);

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
utf8的编码算法 转载
Dec 27 Javascript
javascript 年月日联动实现核心代码
Dec 21 Javascript
JQuery+CSS提示框实现思路及代码(纯手工打造)
May 07 Javascript
js菜单点击显示或隐藏效果的简单实例
Jan 13 Javascript
Javascript优化技巧之短路表达式详细介绍
Mar 27 Javascript
分享10个优化代码的CSS和JavaScript工具
May 11 Javascript
jQuery EasyUI常用数据验证汇总
Sep 18 Javascript
React Native中TabBarIOS的简单使用方法示例
Oct 13 Javascript
在vue中使用v-bind:class的选项卡方法
Sep 27 Javascript
vue组件三大核心概念图文详解
May 30 Javascript
jquery实现吸顶导航效果
Jan 08 jQuery
jQuery 移除事件的方法
Jun 20 jQuery
JSON字符串转JSON对象
Jul 31 #Javascript
javascript实现简单的页面右下角提示信息框
Jul 31 #Javascript
JavaScript实现快速排序的方法
Jul 31 #Javascript
javascript常用正则表达式汇总
Jul 31 #Javascript
轻量级网页遮罩层jQuery插件用法实例
Jul 31 #Javascript
js实时获取并显示当前时间的方法
Jul 31 #Javascript
Javascript实现的Map集合工具类完整实例
Jul 31 #Javascript
You might like
PHP4 与 MySQL 数据库操作函数详解
2006/10/09 PHP
数字转英文
2006/12/06 PHP
windows下升级PHP到5.3.3的过程及注意事项
2010/10/12 PHP
谈谈从phpinfo中能获取哪些值得注意的信息
2017/03/28 PHP
PHP hex2bin()函数用法讲解
2019/02/25 PHP
JavaScript的面向对象(二)
2006/11/09 Javascript
Prototype Object对象 学习
2009/07/12 Javascript
JavaScript 页面编码与浏览器类型判断代码
2010/06/03 Javascript
jquery $.ajax()取xml数据的小问题解决方法
2010/11/20 Javascript
让人印象深刻的10个jQuery手风琴效果应用
2012/05/08 Javascript
加载远程图片时,经常因为缓存而得不到更新的解决方法(分享)
2013/06/26 Javascript
超棒的响应式布局jQuery插件Freetile.js
2014/11/17 Javascript
Javascript随机标签云代码实例
2016/06/21 Javascript
初识简单却不失优雅的Vue.js
2016/09/12 Javascript
移动端日期插件Mobiscroll.js使用详解
2016/12/19 Javascript
基于 Vue.js 之 iView UI 框架非工程化实践记录(推荐)
2017/11/21 Javascript
angular动态表单制作
2018/02/23 Javascript
解决vue页面刷新或者后退参数丢失的问题
2018/03/13 Javascript
JavaScript创建对象方法实例小结
2018/09/03 Javascript
vue语法自动转typescript(解放双手)
2019/09/18 Javascript
[02:38]2018DOTA2亚洲邀请赛赛前采访-VGJ.T
2018/04/03 DOTA
基于Python闭包及其作用域详解
2017/08/28 Python
python利用百度AI实现文字识别功能
2018/11/27 Python
python 通过可变参数计算n个数的乘积方法
2019/06/13 Python
如何通过Python实现标签云算法
2019/07/02 Python
Django的用户模块与权限系统的示例代码
2019/07/24 Python
python之列表推导式的用法
2019/11/29 Python
Python利用socket模块开发简单的端口扫描工具的实现
2021/01/27 Python
Hotels.com印度:酒店预订
2019/05/11 全球购物
Yankee Candle官网:美国最畅销蜡烛品牌之一
2020/01/05 全球购物
护理专业自我鉴定
2014/01/30 职场文书
个人公司授权委托书范本
2014/10/12 职场文书
召开会议通知范文
2015/04/15 职场文书
2015年党员创先争优公开承诺书
2015/04/27 职场文书
当幸福来敲门英文观后感
2015/06/01 职场文书
趣味运动会赞词
2015/07/22 职场文书