jQuery基于函数重载实现自定义Alert函数样式的方法


Posted in Javascript onJuly 27, 2016

本文实例讲述了jQuery基于函数重载实现自定义Alert函数样式的方法。分享给大家供大家参考,具体如下:

(function(){
window.alert = function(text) {
 text=text.toString().replace(/\\/g,'\\').replace(/\n/g,'<br />').replace(/\r/g,'<br />'); //解析alert内容中的换行符
 var alertdiv='<div id="alertdiv" style="position:absolute; display:none ; overflow:hidden; padding:10px 10px 8px; top: 50%; left: 50%; text-align:center; line-height:22px; background-color:#DDE4EE; border:1px solid #ccc">'+text+'<br /><input type="submit" name="button" id="button" value="确定" style="margin-top:8px;" onclick="$(this).parent().remove(); "/></div>'; //自定义div弹窗
 $(document.body).append(alertdiv); //动态加载div
 $("#alertdiv").css({"margin-left":$("#alertdiv").width()/2*(-1)-20,"margin-top":$("#alertdiv").height()/2*(-1)-20}); //设置偏移数值,实现div居中
 $("#alertdiv").show(); //显示
};
})();

注:以上代码可自适应alert内容长度,支持换行符,调用时与原始alert函数无异。

完整示例代码如下:

<script type="text/javascript" src="http://lib.sinaapp.com/js/jquery/1.10.2/jquery-1.10.2.min.js"></script>
<script type="text/javascript">
(function(){
window.alert = function(text) {
 text=text.toString().replace(/\\/g,'\\').replace(/\n/g,'<br />').replace(/\r/g,'<br />'); //解析alert内容中的换行符
 var alertdiv='<div id="alertdiv" style="position:absolute; display:none ; overflow:hidden; padding:10px 10px 8px; top: 50%; left: 50%; text-align:center; line-height:22px; background-color:#DDE4EE; border:1px solid #ccc">'+text+'<br /><input type="submit" name="button" id="button" value="确定" style="margin-top:8px;" onclick="$(this).parent().remove(); "/></div>'; //自定义div弹窗
 $(document.body).append(alertdiv); //动态加载div
 $("#alertdiv").css({"margin-left":$("#alertdiv").width()/2*(-1)-20,"margin-top":$("#alertdiv").height()/2*(-1)-20}); //设置偏移数值,实现div居中
 $("#alertdiv").show(); //显示
};
})();
</script><input type="submit" name="button" id="button" value="点击弹出alert自定义窗口" onclick='alert("这是alert弹窗\n支持\\n换行符")'/>

运行效果截图如下:

jQuery基于函数重载实现自定义Alert函数样式的方法

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
双击滚屏-常用推荐
Nov 29 Javascript
JavaScript 判断判断某个对象是Object还是一个Array
Jan 28 Javascript
显示今天的日期js代码(阳历和农历)
Sep 30 Javascript
JavaScript中的原型链prototype介绍
Dec 30 Javascript
JS实现简单的二维矩阵乘积运算
Jan 26 Javascript
微信小程序  网络请求API详解
Oct 25 Javascript
jQuery的Ajax接收java返回数据方法
Aug 11 jQuery
vue中rem的配置的方法示例
Aug 30 Javascript
ES6基础之展开语法(Spread syntax)
Feb 21 Javascript
layui+jquery支持IE8的表格分页方法
Sep 28 jQuery
JS实现简单tab选项卡切换
Oct 25 Javascript
Vue数据双向绑定底层实现原理
Nov 22 Javascript
jquery动态遍历Json对象的属性和值的方法
Jul 27 #Javascript
移动端翻页插件dropload.js(支持Zepto和jQuery)
Jul 27 #Javascript
js中遍历对象的属性和值的方法
Jul 27 #Javascript
js中的关联数组与普通数组详解
Jul 27 #Javascript
20分钟打造属于你的Bootstrap站点
Jul 27 #Javascript
浅谈js多维数组和hash数组定义和使用
Jul 27 #Javascript
js插件dropload上拉下滑加载数据实例解析
Jul 27 #Javascript
You might like
php对象在内存中的存在形式分析
2015/02/03 PHP
使用php从身份证号中获取一系列线索(星座、生肖、生日等)
2016/05/11 PHP
PHP 应用容器化以及部署方法
2018/02/12 PHP
解决tp5在nginx下修改配置访问的问题
2019/10/16 PHP
asp 取文本框名称代码
2008/12/02 Javascript
让JavaScript拥有类似Lambda表达式编程能力的方法
2010/09/12 Javascript
VBS通过WMI监视注册表变动的代码
2011/10/27 Javascript
深入理解JS中的变量及作用域、undefined与null
2014/03/04 Javascript
JS的数组迭代方法
2015/02/05 Javascript
使用js实现的简单拖拽效果
2015/03/18 Javascript
bootstrap suggest搜索建议插件使用详解
2017/03/25 Javascript
vue2.0使用v-for循环制作多级嵌套菜单栏
2018/06/25 Javascript
基于vue-cli npm run build之后vendor.js文件过大的解决方法
2018/09/27 Javascript
vue学习笔记之作用域插槽实例分析
2020/02/01 Javascript
JavaScript中的Proxy对象
2020/11/27 Javascript
[00:55]2015国际邀请赛中国区预选赛5月23日——28日约战上海
2015/05/25 DOTA
[00:32]2018DOTA2亚洲邀请赛Secret出场
2018/04/03 DOTA
[01:02:54]完美世界DOTA2联赛PWL S2 FTD vs GXR 第一场 11.22
2020/11/26 DOTA
Python爬取三国演义的实现方法
2016/09/12 Python
python实现批量图片格式转换
2020/06/16 Python
spark dataframe 将一列展开,把该列所有值都变成新列的方法
2019/01/29 Python
python中matplotlib条件背景颜色的实现
2019/09/02 Python
Python文本处理简单易懂方法解析
2019/12/19 Python
keras做CNN的训练误差loss的下降操作
2020/06/22 Python
全网最全python库selenium自动化使用详细教程
2021/01/12 Python
python 制作本地应用搜索工具
2021/02/27 Python
python常量折叠基础知识点讲解
2021/02/28 Python
英超联赛的首选足球:Mitre足球
2019/05/06 全球购物
如何配置、使用和清除Smarty缓存
2015/12/23 面试题
酒店服务实习自我鉴定
2013/09/22 职场文书
个人素质的自我评价分享
2013/12/16 职场文书
电子专业毕业生自我鉴定
2014/01/22 职场文书
2014机关干部学习“焦裕禄精神”思想汇报
2014/09/19 职场文书
财务经理岗位职责
2015/01/31 职场文书
AI:如何训练机器学习的模型
2021/04/16 Python
golang DNS服务器的简单实现操作
2021/04/30 Golang