Js 订制自己的AlertBox(信息提示框)


Posted in Javascript onJanuary 09, 2009

本文制作一个用户自定义的AlertBox,效果如图:
Js 订制自己的AlertBox(信息提示框)
js文件中插入如下代码:

// JScript 文件 
// constants to define the title of the alert and button text. 
var ALERT_TITLE = "Oops!"; 
var ALERT_BUTTON_TEXT = "Close"; 
// over-ride the alert method only if this a newer browser. 
// Older browser will see standard alerts 
if(document.getElementById) { 
window.alert = function(txt) { 
createCustomAlert(txt); 
} 
} 
function createCustomAlert(txt) { 
// shortcut reference to the document object 
d = document; 
// if the modalContainer object already exists in the DOM, bail out. 
if(d.getElementById("modalContainer")) return; 
// create the modalContainer div as a child of the BODY element 
mObj = d.getElementsByTagName("body")[0].appendChild(d.createElement("div")); 
mObj.id = "modalContainer"; 
// make sure its as tall as it needs to be to overlay all the content on the page 
mObj.style.height = document.documentElement.scrollHeight + "px"; 
// create the DIV that will be the alert 
alertObj = mObj.appendChild(d.createElement("div")); 
alertObj.id = "alertBox"; 
// MSIE doesnt treat position:fixed correctly, so this compensates for positioning the alert 
if(d.all && !window.opera) alertObj.style.top = document.documentElement.scrollTop + "px"; 
// center the alert box 
alertObj.style.left = (d.documentElement.scrollWidth - alertObj.offsetWidth)/2 + "px"; 
// create an H1 element as the title bar 
h1 = alertObj.appendChild(d.createElement("h1")); 
h1.appendChild(d.createTextNode(ALERT_TITLE)); 
// create a paragraph element to contain the txt argument 
msg = alertObj.appendChild(d.createElement("p")); 
msg.innerHTML = txt; 
// create an anchor element to use as the confirmation button. 
btn = alertObj.appendChild(d.createElement("a")); 
btn.id = "closeBtn"; 
btn.appendChild(d.createTextNode(ALERT_BUTTON_TEXT)); 
btn.href = "#"; 
// set up the onclick event to remove the alert when the anchor is clicked 
btn.onclick = function() { removeCustomAlert();return false; } 
// removes the custom alert from the DOM function removeCustomAlert() { 
// document.getElementsByTagName("body")[0].removeChild(document.getElementById("modalContainer")); 
} 
// removes the custom alert from the DOM 
function removeCustomAlert() 
{ 
document.getElementsByTagName("body")[0].removeChild(document.getElementById("modalContainer")); 
}

将如下代码粘贴到你的HTML你的HTML的HEAD部分。 
<script type="text/javascript" src="include/customAlertBox.js"></script> 
<!-- Paste this code into your external style sheet or the 
CSS section of your HTML document --> 
<style type="text/css"> 
#modalContainer { 
background-color:transparent; 
position:absolute; 
width:100%; 
height:100%; 
top:0px; 
left:0px; 
z-index:10000; 
} 
#alertBox { 
position:relative; 
width:300px; 
min-height:100px; 
margin-top:50px; 
border:2px solid #000; 
background-color:#F2F5F6; 
background-image:url(alert.png); 
background-repeat:no-repeat; 
background-position:20px 30px; 
} 
#modalContainer > #alertBox { 
position:fixed; 
} 
#alertBox h1 { 
margin:0; 
font:bold 0.9em verdana,arial; 
background-color:#78919B; 
color:#FFF; 
border-bottom:1px solid #000; 
padding:2px 0 2px 5px; 
} 
#alertBox p { 
font:0.7em verdana,arial; 
height:50px; 
padding-left:5px; 
margin-left:55px; 
} 
#alertBox #closeBtn { 
display:block; 
position:relative; 
margin:5px auto; 
padding:3px; 
border:1px solid #000; 
width:70px; 
font:0.7em verdana,arial; 
text-transform:uppercase; 
text-align:center; 
color:#FFF; 
background-color:#78919B; 
text-decoration:none; 
} 
</style>

在你的HTML文档的Body部分插入如下代码:
<input type="button" value = "Test the alert" onclick="alert('This is a custom alert dialog that was created by overriding the window.alert method.');">

Javascript 相关文章推荐
测试JavaScript字符串处理性能的代码
Dec 07 Javascript
基于jQuery的js分页代码
Jun 10 Javascript
js预载入和JavaScript Image()对象使用介绍
Aug 28 Javascript
JS返回只包含数字类型的数组实例分析
Dec 16 Javascript
原生JS实现导航下拉菜单效果
Nov 25 Javascript
JS二叉树的简单实现方法示例
Apr 05 Javascript
Angular4项目中添加i18n国际化插件ngx-translate的步骤详解
Jul 02 Javascript
关于Ajax的原理以及代码封装详解
Sep 08 Javascript
layer弹出的iframe层在执行完毕后关闭当前弹出层的方法
Aug 17 Javascript
详解webpack 热更新优化
Sep 13 Javascript
微信小程序自定义模态弹窗组件详解
Dec 24 Javascript
JavaScript语句错误throw、try及catch实例解析
Aug 18 Javascript
通用JS事件写法实现代码
Jan 07 #Javascript
javascript 表单的友好用户体现
Jan 07 #Javascript
JavaScript Prototype对象
Jan 07 #Javascript
开发跨浏览器javascript常见注意事项
Jan 01 #Javascript
用于判断用户注册时,密码强度的JS代码
Jan 01 #Javascript
很全的显示阴历(农历)日期的js代码
Jan 01 #Javascript
js继承 Base类的源码解析
Dec 30 #Javascript
You might like
不用数据库的多用户文件自由上传投票系统(2)
2006/10/09 PHP
探讨PHP使用eAccelerator的API开发详解
2013/06/09 PHP
php无限级分类实现方法分析
2016/10/19 PHP
利用PHP判断是否是连乘数字串的方法示例
2017/07/03 PHP
laravel框架中视图的基本使用方法分析
2019/11/23 PHP
js中设置元素class的三种方法小结
2011/08/28 Javascript
javascript中的注释使用与注意事项小结
2011/09/20 Javascript
《JavaScript高级程序设计》阅读笔记(三) ECMAScript中的引用类型
2012/02/27 Javascript
动态显示可输入的字数提示还可以输入的字数
2014/04/01 Javascript
JS制作手机端自适应缩放显示
2015/06/11 Javascript
jQuery实现鼠标经过弹出提示信息的地图热点效果
2015/08/07 Javascript
windows下安装nodejs及框架express
2015/08/07 NodeJs
浅谈ES6 模板字符串的具体使用方法
2017/11/07 Javascript
react配合antd组件实现的管理系统示例代码
2018/04/24 Javascript
解决Vue中mounted钩子函数获取节点高度出错问题
2018/05/18 Javascript
详解vue 自定义marquee无缝滚动组件
2019/04/09 Javascript
python多线程方式执行多个bat代码
2016/06/07 Python
python交互式图形编程实例(三)
2017/11/17 Python
Python实现将数据框数据写入mongodb及mysql数据库的方法
2018/04/02 Python
对python中的logger模块全面讲解
2018/04/28 Python
使用Python 统计高频字数的方法
2019/01/31 Python
PyCharm更改字体和界面样式的方法步骤
2019/09/27 Python
pytorch三层全连接层实现手写字母识别方式
2020/01/14 Python
tensorflow 重置/清除计算图的实现
2020/01/19 Python
pycharm 实现本地写代码,服务器运行的操作
2020/06/08 Python
CSS3 分类菜单效果
2019/05/27 HTML / CSS
时装界的“朋克之母”:Vivienne Westwood
2017/07/06 全球购物
Reformation官网:美国女装品牌
2018/09/14 全球购物
西部世纪面试题
2014/12/05 面试题
同步和异步有何异同,在什么情况下分别使用他们?
2012/12/28 面试题
乡镇三项教育实施方案
2014/03/30 职场文书
社区清明节活动总结
2014/07/04 职场文书
民间个人借款协议书
2014/09/30 职场文书
加强干部作风建设整改方案
2014/10/24 职场文书
详解PHP服务器如何在有限的资源里最大提升并发能力
2021/05/25 PHP
python调用ffmpeg命令行工具便捷操作视频示例实现过程
2021/11/01 Python