JavaScript
自定义对话框,html5自适应对话框,不采用任何外部框架,纯 JavaScript
./index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>自定义对话框</title>
</head>
<body id="Body">
<style>
* {
margin: 0;
padding: 0;
}
html,body {
height: 100%;
}
body{
font-size: 18px;
position: relative;
}
div#Container {
text-align: center;
padding: 10% 0;
}
span#Button {
font-size: 24px;
background-color: #eeeeee;
padding: 6px 10px;
user-select: none;
cursor: pointer;
border: 1px solid #dddddd;
transition: all 100ms linear;
}
span#Button:hover {
background-color: #ffffff;
transition: all 100ms linear;
border: 1px solid #dddddd;
}
div#Dialog {
background-color: #dddddd;
width: 300px;
height: 200px;
display: inline-block;
padding: 6px 10px;
border-radius: 4px;
position: absolute;
left: 50%;
margin-left: -160px;
top: 50%;
margin-top: -100px;
display: none;
}
div#Dialog div#dialogHeader {
text-align: center;
padding: 4px 0;
font-size: 26px;
user-select: none;
cursor: pointer;
}
div#Dialog div#dialogFooter {
position: absolute;
bottom: 0;
padding: 6px 10px;
font-size: 24px;
width: 280px;
/* text-align: center; */
display: inline-block;
}
div#Dialog > div#dialogFooter > span#dialogButtonA {
display: inline-block;
width: 135px;
text-align: center;
user-select: none;
cursor: pointer;
transition: all 100ms linear;
}
div#Dialog > div#dialogFooter > span#dialogButtonA:hover {
background-color: #aaaaaa;
transition: all 100ms linear;
}
div#Dialog > div#dialogFooter > span#dialogButtonB {
display: inline-block;
width: 135px;
text-align: center;
user-select: none;
cursor: pointer;
transition: all 100ms linear;
}
div#Dialog > div#dialogFooter > span#dialogButtonB:hover {
background-color: #aaaaaa;
transition: all 100ms linear;
}
</style>
<div id="Container">
<span id="Button">弹出对话框</span>
</div>
<div id="Dialog">
<div id="dialogHeader">
对话框
</div>
<div id="dialogBody">
对话框的内容,提示信息等等...
</div>
<div id="dialogFooter">
<span id="dialogButtonA">确定</span>
<span id="dialogButtonB">取消</span>
</div>
</div>
<script src="js/main.js"></script>
</body>
</html>
./js/main.js
document.getElementById('Button').onclick = function () {
// 显示对话框
document.getElementById('Dialog').style.display = 'inline-block';
}
// 确定 按钮点击事件
document.getElementById('dialogButtonA').onclick = function () {
// 关闭对话框
document.getElementById('Dialog').style.display = 'none';
}
// 取消 按钮点击事件
document.getElementById('dialogButtonB').onclick = function () {
// 关闭对话框
document.getElementById('Dialog').style.display = 'none';
}