zoukankan
html css js c++ java
弹出窗口功能的实现
方法一:
<!
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
>
<
html
xmlns
="http://www.w3.org/1999/xhtml"
>
<
head
>
<
title
></
title
>
<
style
>
html,body
{
}
{
font-size
:
12px
;
margin
:
0px
;
height
:
100%
;
}
.mesWindow
{
}
{
border
:
#666 1px solid
;
background
:
#fff
;
}
.mesWindowTop
{
}
{
border-bottom
:
#eee 1px solid
;
margin-left
:
4px
;
padding
:
3px
;
font-weight
:
bold
;
text-align
:
left
;
font-size
:
12px
;
}
.mesWindowContent
{
}
{
margin
:
4px
;
font-size
:
12px
;
}
.mesWindow .close
{
}
{
height
:
15px
;
width
:
28px
;
border
:
none
;
cursor
:
pointer
;
text-decoration
:
underline
;
background
:
#fff
}
</
style
>
<
script
>
var
isIe
=
(document.all)
?
true
:
false
;
//
设置select的可见状态
function
setSelectState(state)
{
var
objl
=
document.getElementsByTagName('select');
for
(
var
i
=
0
;i
<
objl.length;i
++
)
{
objl[i].style.visibility
=
state;
}
}
function
mousePosition(ev)
{
if
(ev.pageX
||
ev.pageY)
{
return
{x:ev.pageX, y:ev.pageY}
;
}
return
{
x:ev.clientX
+
document.body.scrollLeft
-
document.body.clientLeft,y:ev.clientY
+
document.body.scrollTop
-
document.body.clientTop
}
;
}
//
弹出方法
function
showMessageBox(wTitle,content,pos,wWidth)
{
closeWindow();
var
bWidth
=
parseInt(document.documentElement.scrollWidth);
var
bHeight
=
parseInt(document.documentElement.scrollHeight);
if
(isIe)
{
setSelectState('hidden');}
var
back
=
document.createElement(
"
div
"
);
back.id
=
"
back
"
;
var
styleStr
=
"
top:0px;left:0px;position:absolute;background:#666;
"
+
bWidth
+
"
px;height:
"
+
bHeight
+
"
px;
"
;
styleStr
+=
(isIe)
?
"
filter:alpha(opacity=40);
"
:
"
opacity:0.40;
"
;
back.style.cssText
=
styleStr;
document.body.appendChild(back);
var
mesW
=
document.createElement(
"
div
"
);
mesW.id
=
"
mesWindow
"
;
mesW.className
=
"
mesWindow
"
;
mesW.innerHTML
=
"
<div class='mesWindowTop'><table width='100%' height='100%'><tr><td>
"
+
wTitle
+
"
</td><td style='1px;'><input type='button' onclick='closeWindow();' title='关闭窗口' class='close' value='关闭' /></td></tr></table></div><div class='mesWindowContent' id='mesWindowContent'>
"
+
content
+
"
</div><div class='mesWindowBottom'></div>
"
;
styleStr
=
"
left:
"
+
(((pos.x
-
wWidth)
>
0
)
?
(pos.x
-
wWidth):pos.x)
+
"
px;top:
"
+
(pos.y)
+
"
px;position:absolute;
"
+
wWidth
+
"
px;
"
;
mesW.style.cssText
=
styleStr;
document.body.appendChild(mesW);
}
function
showBackground(obj,endInt)
{
obj.filters.alpha.opacity
+=
1
;
if
(obj.filters.alpha.opacity
<
endInt)
{
setTimeout(
function
()
{showBackground(obj,endInt)}
,
8
);
}
}
//
关闭窗口
function
closeWindow()
{
if
(document.getElementById('back')
!=
null
)
{
document.getElementById('back').parentNode.removeChild(document.getElementById('back'));
}
if
(document.getElementById('mesWindow')
!=
null
)
{
document.getElementById('mesWindow').parentNode.removeChild(document.getElementById('mesWindow'));
}
if
(isIe)
{
setSelectState('');}
}
//
测试弹出
function
testMessageBox(ev)
{
var
objPos
=
mousePosition(ev);
messContent
=
"
<div style='padding:20px 0 20px 0;text-align:center'>消息正文</div>
"
;
showMessageBox('窗口标题',messContent,objPos,
350
);
}
</
script
>
</
head
>
<
body
>
<
div
style
="padding:20px"
>
<
div
style
="text-align:left"
;
><
a
href
="#none"
onclick
="testMessageBox(event);"
>
弹出窗口
</
a
></
div
>
<
div
style
="text-align:left;padding-left:20px;padding-top:10px"
;
><
select
><
option
>
下拉
</
option
></
select
>
弹出窗口时会将其隐藏,关闭时会让其显示,目的是在IE中防止弹出的DIV挡不住下拉框
</
div
>
<
div
style
="text-align:center"
;
><
a
href
="#none"
onclick
="testMessageBox(event);"
>
弹出窗口
</
a
></
div
>
<
div
style
="text-align:right"
;
><
a
href
="#none"
onclick
="testMessageBox(event);"
>
弹出窗口
</
a
></
div
>
</
div
>
</
body
>
</
html
>
方法二:
<!
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
>
<
html
xmlns
="http://www.w3.org/1999/xhtml"
>
<
head
>
<
title
></
title
>
<
style
>
html,body
{
}
{
font-size
:
12px
;
margin
:
0px
;
height
:
100%
;
}
.mesWindow
{
}
{
border
:
#666 1px solid
;
background
:
#fff
;
}
.mesWindowTop
{
}
{
border-bottom
:
#eee 1px solid
;
margin-left
:
4px
;
padding
:
3px
;
font-weight
:
bold
;
text-align
:
left
;
font-size
:
12px
;
}
.mesWindowContent
{
}
{
margin
:
4px
;
font-size
:
12px
;
}
.mesWindow .close
{
}
{
height
:
15px
;
width
:
28px
;
border
:
none
;
cursor
:
pointer
;
text-decoration
:
underline
;
background
:
#fff
}
</
style
>
<
script
>
var
isIe
=
(document.all)
?
true
:
false
;
//
设置select的可见状态
function
setSelectState(state)
{
var
objl
=
document.getElementsByTagName('select');
for
(
var
i
=
0
;i
<
objl.length;i
++
)
{
objl[i].style.visibility
=
state;
}
}
function
mousePosition(ev)
{
if
(ev.pageX
||
ev.pageY)
{
return
{x:ev.pageX, y:ev.pageY}
;
}
return
{
x:ev.clientX
+
document.body.scrollLeft
-
document.body.clientLeft,y:ev.clientY
+
document.body.scrollTop
-
document.body.clientTop
}
;
}
//
弹出方法
function
showMessageBox(wTitle,content,pos,wWidth)
{
closeWindow();
var
bWidth
=
parseInt(document.documentElement.scrollWidth);
var
bHeight
=
parseInt(document.documentElement.scrollHeight);
if
(isIe)
{
setSelectState('hidden');}
var
back
=
document.createElement(
"
div
"
);
back.id
=
"
back
"
;
var
styleStr
=
"
top:0px;left:0px;position:absolute;background:#666;
"
+
bWidth
+
"
px;height:
"
+
bHeight
+
"
px;
"
;
styleStr
+=
(isIe)
?
"
filter:alpha(opacity=0);
"
:
"
opacity:0;
"
;
back.style.cssText
=
styleStr;
document.body.appendChild(back);
showBackground(back,
50
);
var
mesW
=
document.createElement(
"
div
"
);
mesW.id
=
"
mesWindow
"
;
mesW.className
=
"
mesWindow
"
;
mesW.innerHTML
=
"
<div class='mesWindowTop'><table width='100%' height='100%'><tr><td>
"
+
wTitle
+
"
</td><td style='1px;'><input type='button' onclick='closeWindow();' title='关闭窗口' class='close' value='关闭' /></td></tr></table></div><div class='mesWindowContent' id='mesWindowContent'>
"
+
content
+
"
</div><div class='mesWindowBottom'></div>
"
;
styleStr
=
"
left:
"
+
(((pos.x
-
wWidth)
>
0
)
?
(pos.x
-
wWidth):pos.x)
+
"
px;top:
"
+
(pos.y)
+
"
px;position:absolute;
"
+
wWidth
+
"
px;
"
;
mesW.style.cssText
=
styleStr;
document.body.appendChild(mesW);
}
//
让背景渐渐变暗
function
showBackground(obj,endInt)
{
if
(isIe)
{
obj.filters.alpha.opacity
+=
1
;
if
(obj.filters.alpha.opacity
<
endInt)
{
setTimeout(
function
()
{showBackground(obj,endInt)}
,
5
);
}
}
else
{
var
al
=
parseFloat(obj.style.opacity);al
+=
0.01
;
obj.style.opacity
=
al;
if
(al
<
(endInt
/
100
))
{setTimeout(
function
()
{showBackground(obj,endInt)}
,
5
);}
}
}
//
关闭窗口
function
closeWindow()
{
if
(document.getElementById('back')
!=
null
)
{
document.getElementById('back').parentNode.removeChild(document.getElementById('back'));
}
if
(document.getElementById('mesWindow')
!=
null
)
{
document.getElementById('mesWindow').parentNode.removeChild(document.getElementById('mesWindow'));
}
if
(isIe)
{
setSelectState('');}
}
//
测试弹出
function
testMessageBox(ev)
{
var
objPos
=
mousePosition(ev);
messContent
=
"
<div style='padding:20px 0 20px 0;text-align:center'>消息正文</div>
"
;
showMessageBox('窗口标题',messContent,objPos,
350
);
}
</
script
>
</
head
>
<
body
>
<
div
style
="padding:20px"
>
<
div
style
="text-align:left"
;
><
a
href
="#none"
onclick
="testMessageBox(event);"
>
弹出窗口
</
a
></
div
>
<
div
style
="text-align:left;padding-left:20px;padding-top:10px"
;
><
select
ID
="Select1"
NAME
="Select1"
><
option
>
下拉
</
option
></
select
>
弹出窗口时会将其隐藏,关闭时会让其显示,目的是在IE中防止弹出的DIV挡不住下拉框
</
div
>
<
div
style
="text-align:center"
;
><
a
href
="#none"
onclick
="testMessageBox(event);"
>
弹出窗口
</
a
></
div
>
<
div
style
="text-align:right"
;
><
a
href
="#none"
onclick
="testMessageBox(event);"
>
弹出窗口
</
a
></
div
>
</
div
>
</
body
>
</
html
>
查看全文
相关阅读:
第一次作业
机器学习第一次个人作业
第02组 Beta版本演示
第02组 Beta冲刺(4/4)
第02组 Beta冲刺(3/4)
微信小程序信息会话列表删除功能
微信小程序自定义弹窗组件
微信小程序使用Echarts
uni.showModal,uni.showToast使用
Array filter() 方法
原文地址:https://www.cnblogs.com/wzyexf/p/911877.html
最新文章
分类与监督学习,朴素贝叶斯分类算法
主成分分析
特征选择
逻辑回归实践
逻辑回归
Error reading pom.xml
和小吴日常对话1
java.lang.NoClassDefFoundError: org/apache/commons/beanutils/BeanUtils
2020系统综合实践 第6次实践作业 10组
系统结构综合实践-第五次作业
热门文章
系统结构综合实践-第四次作业(5.18更新)
系统结构综合实践-第三次作业
系统结构综合实践-第二次作业
系统结构综合实践-第一次作业
第09组 Beta版本演示
机器学习第二次个人作业
第四章 线性判据与回归 笔记
第三章 贝叶斯决策和学习 笔记
第二章 基于距离的分类器 笔记
第一章 模式识别基本概念 笔记
Copyright © 2011-2022 走看看