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 相关文章推荐
jQuery Ajax 全解析
Feb 08 Javascript
js实现一个省市区三级联动选择框代码分享
Mar 06 Javascript
js中的屏蔽的使用示例
Jul 30 Javascript
jQuery点击弹出下拉菜单的小例子
Aug 01 Javascript
实现前后端数据交互方法汇总
Apr 07 Javascript
最简单的JavaScript验证整数、小数、实数、有效位小数正则表达式
Apr 17 Javascript
JavaScript检测并限制复选框选中个数的方法
Aug 12 Javascript
javascript跨域的方法汇总
Oct 23 Javascript
浅谈JQuery+ajax+jsonp 跨域访问
Jun 25 Javascript
jQuery animate()实现背景色渐变效果的处理方法【使用jQuery.color.js插件】
Mar 15 Javascript
Node.js API详解之 zlib模块用法分析
May 19 Javascript
在实例中重学JavaScript事件循环
Dec 03 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手册及PHP编程标准
2006/12/17 PHP
php微信公众平台开发(一) 配置接口
2016/12/06 PHP
TP5(thinkPHP5框架)基于bootstrap实现的单图上传插件用法示例
2019/05/29 PHP
飞鱼(shqlsl) javascript作品集
2006/12/16 Javascript
jquery实现居中弹出层代码
2010/08/25 Javascript
javascript针对DOM的应用分析(三)
2012/04/15 Javascript
JQuery select(下拉框)操作方法汇总
2015/04/15 Javascript
只需五句话搞定JavaScript作用域(经典)
2016/07/26 Javascript
js实现select选择框效果及美化
2016/08/19 Javascript
详解微信小程序——自定义圆形进度条
2016/12/29 Javascript
ReactNative实现图片上传功能的示例代码
2017/07/11 Javascript
Angular网络请求的封装方法
2018/05/22 Javascript
JavaScript轮播停留效果的实现思路
2018/05/24 Javascript
Vue分页效果与购物车功能
2019/12/13 Javascript
js实现简单点赞操作
2020/03/17 Javascript
Vue列表循环从指定下标开始的多种解决方案
2020/04/08 Javascript
javascript实现贪吃蛇游戏(娱乐版)
2020/08/17 Javascript
[02:10]2018DOTA2亚洲邀请赛赛前采访-Liquid
2018/04/03 DOTA
Python跳出循环语句continue与break的区别
2014/08/25 Python
Python中的十大图像处理工具(小结)
2019/06/10 Python
图解python全局变量与局部变量相关知识
2019/11/02 Python
python中xlrd模块的使用详解
2021/02/01 Python
基于Canvas+Vue的弹幕组件的实现
2019/07/23 HTML / CSS
HTML5 Canvas如何实现纹理填充与描边(Fill And Stroke)
2013/07/15 HTML / CSS
Marlies Dekkers内衣法国官方网上商店:国际知名的荷兰内衣品牌
2019/03/18 全球购物
Timberland德国官网:靴子、鞋子、衣服、夹克及配件
2019/12/10 全球购物
巴西本土电商平台:Americanas
2020/06/21 全球购物
初入社会应届生求职信
2013/11/18 职场文书
采购内勤岗位职责
2013/12/10 职场文书
党员公开承诺书内容
2014/05/20 职场文书
幼儿园毕业典礼园长致辞
2015/07/29 职场文书
2016年员工年度考核评语
2015/12/02 职场文书
小学教师暑期培训心得体会
2016/01/09 职场文书
初中教务主任竞聘演讲稿(范文)
2019/08/20 职场文书
一文简单了解MySQL前缀索引
2022/04/03 MySQL
Vscode中SSH插件如何远程连接Linux
2022/05/02 Servers