用Jquery重写windows.alert方法实现思路


Posted in Javascript onApril 03, 2013

已经在 IE8 , firefox3.0.11下面测试通过

$.extend({ 
includePath: '', 
include: function(file) 
{ 
var files = typeof file == "string" ? [file] : file; 
for (var i = 0; i < files.length; i++) 
{ 
var name = files[i].replace(/^\s|\s$/g, ""); 
var att = name.split('.'); 
var ext = att[att.length - 1].toLowerCase(); 
var isCSS = ext == "css"; 
var tag = isCSS ? "link" : "script"; 
var attr = isCSS ? " type='text/css' rel='stylesheet' " : " language='javascript' type='text/javascript' "; 
var link = (isCSS ? "href" : "src") + "='" + $.includePath + name + "'"; 
if ($(tag + "[" + link + "]").length == 0) document.write("<" + tag + attr + link + "></" + tag + ">"); 
} 
} 
}); 
$.include(['script/jquery.divbox.js','/css/pop_win.css']); 
$(document).ready(function() 
{ 
var IsFirstAlert = true; 
var alertQueue = []; 
window.alert = showAlert; 
var divalert = ""; 
divalert += "<div style=\"width:380px; height:180px; overflow:hidden;display:none\" id=\"divAlert\">"; 
divalert += " <div class=\"win_c\">"; 
divalert += " <div class=\"win_t\" id=\"\">"; 
divalert += " <div class=\"mail_timg\" ><h3>TITLE<\/h3><\/div>"; 
divalert += " <div class=\"clear\"><\/div>"; 
divalert += " <\/div>"; 
divalert += " <div class=\"alrt2\" style=\"text-align:center\">"; 
divalert += " <span id=\"spaAlertMessage\" class=\"f14 ifont\"><\/span><br \/>"; 
divalert += " <div class=\"clear\"><\/div>"; 
divalert += " <\/div>"; 
divalert += " <p class=\"Acenter\"><input id='alertClose' type=\"button\" value=\"确定\" class=\"btn7\" \/>    <input type=\"reset\" value=\"取消\" style=\"display:none\" class=\"btn8\" \/><br \/><br \/><\/p>"; 
divalert += " <p> <\/p>"; 
divalert += " <\/div>"; 
divalert += " "; 
divalert += "<\/div>"; 
$("body").append(divalert); 
function showAlert(info) 
{ 
alertQueue.push(info); 
if (IsFirstAlert) 
{ 
IsFirstAlert = false; 
OpenAlert(); 
} 
} 
$("#alertClose").click(function() 
{ 
$('#divAlert').CloseDiv() 
if (alertQueue.length > 0) 
{ 
setTimeout(OpenAlert, 150); 
} 
}); 
function OpenAlert() 
{ 
$("#spaAlertMessage").html(alertQueue[0]); 
alertQueue.splice(0, 1); 
$("#divAlert").OpenDiv(); 
} 
});

注:以上引用js与CSS的jquery插件
Javascript 相关文章推荐
jquery下实现overlay遮罩层代码
Aug 25 Javascript
JavaScript代码复用模式实例分析
Dec 02 Javascript
javascript变量作用域使用中常见错误总结
Mar 26 Javascript
通过AJAX的JS、JQuery两种方式解析XML示例介绍
Sep 23 Javascript
javascript ajax 仿百度分页函数
Oct 29 Javascript
React-Native左右联动List的示例代码
Sep 21 Javascript
bootstrap3中container与container_fluid外层容器的区别讲解
Dec 04 Javascript
React Native自定义控件底部抽屉菜单的示例
Feb 08 Javascript
基于Vuex无法观察到值变化的解决方法
Mar 01 Javascript
详解JavaScript函数callee、call、apply的区别
Mar 08 Javascript
vue使用自定义指令实现拖拽
Jan 29 Javascript
vue实现axios图片上传功能
Aug 20 Javascript
如何使用jquery动态加载js,css文件实现代码
Apr 03 #Javascript
关于js注册事件的常用方法
Apr 03 #Javascript
JavaScript栏目列表隐藏/显示简单实现
Apr 03 #Javascript
JS模板实现方法
Apr 03 #Javascript
JS实现标签页效果(配合css)
Apr 03 #Javascript
JS实现下拉框的动态添加(附效果)
Apr 03 #Javascript
js去字符串前后空格5种实现方法及比较
Apr 03 #Javascript
You might like
PHP获取搜索引擎关键字来源的函数(支持百度和谷歌等搜索引擎)
2012/10/03 PHP
如何使用PHP批量去除文件UTF8 BOM信息
2013/08/05 PHP
JavaScript 高级语法介绍
2009/06/15 Javascript
Javascript 中的 call 和 apply使用介绍
2012/02/22 Javascript
jquery remove方法应用详解
2012/11/22 Javascript
html+javascript实现可拖动可提交的弹出层对话框效果
2013/08/05 Javascript
js给onclick赋值传参数的两种方法
2013/11/25 Javascript
关于jquery中全局函数each使用介绍
2013/12/10 Javascript
jquery mobile的触控点击事件会多次触发问题的解决方法
2014/05/08 Javascript
详解jQuery UI库中文本输入自动补全功能的用法
2016/04/23 Javascript
Bootstrap table的使用方法
2016/11/02 Javascript
浅谈jQuery before和insertBefore的区别
2016/12/04 Javascript
详解Nodejs基于mongoose模块的增删改查的操作
2016/12/21 NodeJs
JavaScript获取ul中li个数的方法
2017/02/13 Javascript
深入理解vue2.0路由如何配置问题
2017/07/18 Javascript
JavaScript适配器模式详解
2017/10/19 Javascript
JS插入排序简单理解与实现方法分析
2019/11/25 Javascript
ant-design-vue 快速避坑指南(推荐)
2020/01/21 Javascript
Python实现基于HTTP文件传输实例
2014/11/08 Python
python探索之BaseHTTPServer-实现Web服务器介绍
2017/10/28 Python
python清理子进程机制剖析
2017/11/23 Python
Python中的defaultdict与__missing__()使用介绍
2018/02/03 Python
Python subprocess库的使用详解
2018/10/26 Python
对pyqt5多线程正确的开启姿势详解
2019/06/14 Python
深入了解Django中间件及其方法
2019/07/26 Python
Python Socketserver实现FTP文件上传下载代码实例
2020/03/27 Python
Python 里最强的地图绘制神器
2021/03/01 Python
alice McCALL官网:澳大利亚时尚品牌
2020/11/16 全球购物
Collection和Collections的区别
2016/05/02 面试题
Ibatis如何调用存储过程
2015/05/15 面试题
C语言怎样定义和声明全局变量和函数最好
2013/11/26 面试题
什么是聚集索引和非聚集索引
2012/01/17 面试题
女大学生个人求职信
2013/12/09 职场文书
保密工作责任书
2014/04/16 职场文书
学校领导班子四风对照检查材料
2014/09/27 职场文书
Pytorch中的学习率衰减及其用法详解
2021/06/05 Python