JS弹出层/窗口源代码收集,很全的,很好用!
<!DOCTYPE html>
<html>
<head><title>JS弹出层</title>
<style>
body {margin:0px}
#Loading {position:absolute;z-index:10;left:10px;top:10px;border:1px #666666 solid;background:#eeeeee;width:10px;height:10px}
</style>
<script LANGUAGE="JavaScript">
<!--
function $(){return document.getElementById?document.getElementById(arguments[0]):eval(arguments[0]);}
var OverH,OverW,ChangeDesc,ChangeH=50,ChangeW=50;
function OpenDiv(_Dw,_Dh,_Desc) {
$("Loading").innerHTML="";
OverH=_Dh;OverW=_Dw;ChangeDesc=_Desc;
$("Loading").style.display='';
if(_Dw>_Dh){ChangeH=Math.ceil((_Dh-10)/((_Dw-10)/50))}else if(_Dw<_Dh){ChangeW=Math.ceil((_Dw-10)/((_Dh-10)/50))}
$("Loading").style.top=(document.documentElement.clientHeight-10)/2+"px";
$("Loading").style.left=(document.documentElement.clientWidth-10)/2+"px";
OpenNow()
}
var Nw=10,Nh=10;
function OpenNow() {
if (Nw>OverW-ChangeW)ChangeW=2;
if (Nh>OverH-ChangeH)ChangeH=2;
Nw=Nw+ChangeW;Nh=Nh+ChangeH;
if(OverW>Nw||OverH>Nh) {
if(OverW>Nw) {
$("Loading").style.width=Nw+"px";
$("Loading").style.left=(document.documentElement.clientWidth-Nw)/2+"px";
}
if(OverH>Nh) {
$("Loading").style.height=Nh+"px";
$("Loading").style.top=(document.documentElement.clientHeight-Nh)/2+"px"
}
window.setTimeout("OpenNow()",10)
}else{
Nw=10;Nh=10;ChangeH=50;ChangeW=50;
$("Loading").innerHTML=ChangeDesc;
}
}
//-->
</script>
</head>
<body>
<a href="javascript:OpenDiv(500,300,'层1<br>双击关闭')">层1 500*300</a><br><br>
<a href="javascript:OpenDiv(500,200,'层2<br>双击关闭')">层2 500*200</a><br><br>
<a href="javascript:OpenDiv(200,500,'层3<br>双击关闭')">层3 200*500</a><br><br>
<a href="javascript:OpenDiv(500,500,'层4<br>双击关闭')">层4 500*500</a>
<div id="Loading" style="display:none" ondblclick="this.style.display='none'"></div>
</body>
</html>
可以用鼠标拖动的JS弹出层
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>简单的测试页面</title>
<style type="text/css">
<!--
html
{
height: 100%;
}
body
{
margin: 0px;
padding: 0px;
height: 100%;
}
#dt_3
{
cursor: pointer;
}
div#mbDIV
{
position: absolute;
top: 0px;
left: 0px;
width: 100%;
height: 100%;
background-color: #AAAAAA;
z-index: 10;
filter: alpha(opacity=80);opacity:0.8;
}
div#loginDIV
{
position: absolute;
width: 300px;
height: 150px;
background-color: #FFFF00;
z-index: 20;
}
div#loginTopDIV
{
width: 100%;
height: 20px;
background-color: #FF0000;
cursor: move;
}
-->
</style>
<script type="text/javascript">
<!--
function show(ele)
{
eval(ele + ".style.display = ''");
}
function hidden(ele)
{
eval(ele + ".style.display = 'none'");
}
//-->
</script>
</head>
<body>
<div style="overflow: hidden;">
<h3>请点击 --> 03号拖拉机</h3>
<p id="dt_1">01号拖拉机</p>
<p id="dt_2">02号拖拉机</p>
<p id="dt_3">03号拖拉机</p>
<p id="dt_4">04号拖拉机</p>
<p id="dt_5">05号拖拉机</p>
<p id="dt_6">06号拖拉机</p>
<p id="dt_7">07号拖拉机</p>
<p id="dt_8">08号拖拉机</p>
<p id="dt_9">09号拖拉机</p>
<p id="dt_10">10号拖拉机</p>
<p id="dt_11">11号拖拉机</p>
</div>
<div id="mbDIV" style="display: none;"></div>
<div id="loginDIV" style="top: 200px;left: 300px;display: none;">
<div id="loginTopDIV">Move</div>
<p style="text-align: center;">登陆内容在这里哦</p>
<form action="#" method="get" style="text-align: center;">
<input type="button" value="确定" id="button_1" /> <input type="button" value="取消" id="button_2" />
</form>
</div>
<script type="text/javascript">
<!--
/**
* 这里是乱七八遭信息
* */
for(var i=1;i<=11;i++)
{
eval("var dt_" + i + " = document.getElementById('dt_" + i + "')");
}
var mbDIV = document.getElementById("mbDIV");
var loginDIV = document.getElementById("loginDIV");
var loginTopDIV = document.getElementById("loginTopDIV");
document.getElementById("button_1").onclick = function()
{
hidden("loginDIV");
hidden("mbDIV");
}
document.getElementById("button_2").onclick = function()
{
hidden("loginDIV");
hidden("mbDIV");
}
dt_3.onclick = function()
{
loginDIV.style.top = "200px";
loginDIV.style.left = "300px";
show("loginDIV");
show("mbDIV")
}
/**
*这里写的是拖动信息
* */
loginTopDIV.onmousedown = Down;
var tHeight,lWidth;
function Down(e)
{
var event = window.event || e;
tHeight = event.clientY - parseInt(loginDIV.style.top.replace(/px/,""));
lWidth = event.clientX - parseInt(loginDIV.style.left.replace(/px/,""));
document.onmousemove = Move;
document.onmouseup = Up;
}
function Move(e) {
var event = window.event || e;
var top = event.clientY - tHeight;
var left = event.clientX - lWidth;
//判断 top 和 left 是否超出边界
top = top < 0 ? 0 : top;
top = top > document.body.offsetHeight - 150 ? document.body.offsetHeight - 150 : top;
left = left < 0 ? 0 : left;
left = left > document.body.offsetWidth - 300 ? document.body.offsetWidth - 300 : left;
loginDIV.style.top = top + "px";
loginDIV.style.left = left +"px";
}
function Up() {
document.onmousemove = null;
}
//-->
</script>
</body>
</html>
一直为JS弹出层的定位问题头疼,现在不用愁了,不同的弹出层可以用CSS来定位,不用在JS给每个弹出层都定同样的位置,具体代码如下:
演示地址:猛击这里
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>JS弹出层</title>
<script language="javascript">
function BOX_show(e)//显示
{
if(document.getElementById(e)==null)
{
return ;
}
var selects = document.getElementsByTagName('select');
for(i = 0; i < selects.length; i++)
{
selects[i].style.visibility = "hidden";
}
BOX_layout(e);
window.onresize = function(){BOX_layout(e);} //改变窗体重新调整位置
window.onscroll = function(){BOX_layout(e);} //滚动窗体重新调整位置
document.onkeyup = function(event)
{
var evt = window.event || event;
var code = evt.keyCode?evt.keyCode : evt.which;
//alert(code);
if(code == 27)
{
BOX_remove(e);
}
}
}
function BOX_remove(e)//移除
{
window.onscroll = null;
window.onresize = null;
document.getElementById('BOX_overlay').style.display="none";
document.getElementById(e).style.display="none";
var selects = document.getElementsByTagName('select');
for(i = 0; i < selects.length; i++)
{
selects[i].style.visibility = "visible";
}
}
function BOX_layout(e)//调整位置
{
var a = document.getElementById(e);
if (document.getElementById('BOX_overlay')==null)//判断是否新建遮掩层
{
var overlay = document.createElement("div");
overlay.setAttribute('id','BOX_overlay');
//overlay.onclick=function(){BOX_remove(e);};
//a.parentNode.appendChild(overlay);
document.body.appendChild(overlay);
}
document.getElementById('BOX_overlay').ondblclick=function(){BOX_remove(e);};
//取客户端左上坐标,宽,高
var scrollLeft = (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft);
var scrollTop = (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
var clientWidth;
if (window.innerWidth)
{
clientWidth = window.innerWidth;
// clientWidth = ((Sys.Browser.agent === Sys.Browser.Safari) ? window.innerWidth : Math.min(window.innerWidth, document.documentElement.clientWidth));
}
else
{
clientWidth = document.documentElement.clientWidth;
}
var clientHeight;
if (window.innerHeight)
{
clientHeight = window.innerHeight;
//clientHeight = ((Sys.Browser.agent === Sys.Browser.Safari) ? window.innerHeight : Math.min(window.innerHeight, document.documentElement.clientHeight));
}
else
{
clientHeight = document.documentElement.clientHeight;
}
var bo = document.getElementById('BOX_overlay');
bo.style.left = scrollLeft+'px';
bo.style.top = scrollTop+'px';
bo.style.width = clientWidth+'px';
bo.style.height = clientHeight+'px';
bo.style.display="";
//Popup窗口定位
a.style.position = 'absolute';
a.style.zIndex=999;
a.style.display="";
//a.style.left = scrollLeft+((clientWidth-a.offsetWidth)/2)+'px';
//a.style.top = scrollTop+((clientHeight-a.offsetHeight)/2)+'px';
}
function HiddenButton(e)
{
e.style.visibility='hidden';
e.coolcodeviousSibling.style.visibility='visible'
}
</script>
<style type="text/css">
body{}
#BOX_overlay{position: absolute;z-index: 100;top: 0px;left: 0px;background-color:#ccc;filter: alpha(opacity=70);-moz-opacity: 0.7;opacity: 0.7;}
</style>
</head>
<body>
<p onClick="BOX_show('messdiv')" style="cursor:pointer;">点我就出来</p>
<div id="messdiv" style="position:absolute; display:none; top:135px; left:350px; width:560px; padding:10px 20px 0; background:#f8e2a0;text-align:left; border:2px solid #5d3f0c;z-index:999; font-size:12px;">
<p style="text-align:right; margin:0; padding:0; line-height:14px; float:right;"><a href="javascript:void(0)" title="关闭" style="line-height:14px;font-size:12px; color:#333;" onclick="BOX_remove('messdiv')" target="_self">关闭</a></p>
<br /><br /><br /><br />这里是内容这里是内容这里是内容这里是内容这里是内容这里是内容这里是内容这里是内容这里是内容这里是内容<br /><br /><br /><br /><br /><br /><br /><br />
<div style="width:176px;padding:0 120px;overflow:hidden;margin:10px auto 20px;">
<a title="关闭窗口" href="javascript:void(0)" onclick="BOX_remove('messdiv')" target="_self" style=" background:#fff;float:left; width:70px;height:20px;padding:5px 0 0 10px;color:#feeba9;margin-right:10px;"><span style="color:#ffd014;">关闭窗口</span></a>
<a title="收藏页面" href="javascript:void(0)" onClick="addbookmark()" target="_self" style=" background:#fff;float:left;width:70px;height:20px;padding:5px 0 0 10px;color:#feeba9;"><span style="color:#ffd014;">收藏页面</span></a>
</div>
<div style="clear:both;"></div>
</div>
<div id="BOX_overlay"></div>
<script type="text/javascript">
//添加收藏夹
function addbookmark()
{
var nome_sito = "工作室";
var url_sito = "http://www.seeseeyou.com/";
if ((navigator.appName == "Microsoft Internet Explorer") && (parseInt
(navigator.appVersion) >= 4))
window.external.AddFavorite(url_sito, nome_sito);
else if (navigator.appName == "Netscape")
window.sidebar.addPanel(nome_sito, url_sito, '');
else
alert("Sorry!Cann't Add this site to your favorite!.");}
</script>
</body>
</html>
分享到:
相关推荐
3. **JavaScript逻辑**:JS主要用于控制弹出层的显示和隐藏。这可以通过改变元素的CSS属性(如display或visibility)来实现。同时,还可以添加事件监听器,如点击按钮触发弹出层,或者点击弹出层外的区域关闭弹出层...
本资源提供的“弹出层效果(源代码)”很可能是实现这一功能的JavaScript或CSS代码示例,可能包括HTML结构、CSS样式和JavaScript脚本。 1. **HTML 结构**:弹出层的基础通常由HTML元素构建,如`<div>`、`<span>`或`...
在网页开发中,JavaScript(JS)常常用于实现各种交互效果,其中之一就是弹出层功能。弹出层在用户界面上创建了一个临时突出显示的区域,用于显示额外的信息、提示、表单或者任何需要用户注意的内容,而不会中断主...
标题中的"JS弹出窗口源代码"指的是使用JavaScript编写的用于实现弹出窗口功能的代码。JS弹窗主要有以下几种类型: 1. `alert()`:这是最基础的弹窗,通常用于显示警告信息,只有一个确定按钮。例如: ```javascript...
例如,可以创建一个隐藏的弹出层,通过JavaScript控制其显示和隐藏: ```css .popup { display: none; /* 初始状态隐藏 */ position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); ...
弹出层在 web 开发中的应用非常广泛,包括但不限于:提示信息、表单提交确认、图片画廊、模态窗口、广告展示等。它们可以避免页面跳转,保持用户的浏览上下文,提高用户的操作效率。 在这个实例中,我们看到一个名...
【标题】"一个很好的js弹出层"涉及的是JavaScript中的一种常见用户界面设计技术,用于创建弹出式对话框或窗口。在网页开发中,弹出层通常用于显示额外的信息、提示、表单或者进行某种交互操作,而不离开当前页面。...
然后,在`js`文件中,我们编写JavaScript代码来处理弹出层的显示和隐藏,以及图片轮播的逻辑。弹出层的显示和隐藏可以通过改变CSS的`display`属性实现。图片轮播可以使用数组存储图片源,并通过计数器来切换图片。...
在JavaScript中,创建弹出窗口主要通过`window.open()`函数来实现,但此方法通常用于打开新的浏览器窗口或标签页,而不是创建浮动的弹出层。在描述中提到的“点击灰色部分窗口自动消失”可能是指一种模态对话框...
- `js` 文件夹:可能包含JavaScript源代码,实现弹出层的逻辑,包括初始化、显示/隐藏、动画控制等。 - `dist` 文件夹:通常是编译或打包后的文件,可能包含压缩和优化过的CSS和JavaScript文件,供生产环境使用。 ...
开源的弹出层效果意味着开发者可以免费获取并使用这些代码,同时也能够查看和修改源代码以适应自己的项目需求。开源项目通常具有良好的文档支持和社区活跃度,可以帮助开发者快速理解和集成弹出层功能,同时也能享受...
在网页设计中,弹出层是一种常见的交互元素,用于在用户点击某个链接或按钮时显示一个浮动窗口,通常用来展示图片、视频或者详细信息。SexyLightBox是一款基于jQuery的弹出层插件,它在原版LightBox的基础上进行了...
这个“js可拖拽最大最小化弹出层窗口.zip”文件包含了一个实现这一功能的示例代码。以下是相关知识点的详细说明: 1. **CSS(层叠样式表)**:CSS用于定义网页的布局和视觉样式。在这个项目中,CSS将被用来创建弹出...
源代码中可能会有类(classes)、函数(functions)和事件处理程序(event handlers)等,用于实现弹出窗口的逻辑和动画效果。 “说明.htm”文件可能是项目的说明文档,提供了关于如何部署、配置和使用这个代码示例...
【标题与内容弹出层js特效】是一种使用jQuery库实现的动态效果,它允许开发者创建具有自定义标题和内容的弹出窗口。这种特效在网页设计中非常常见,用于显示通知、消息、用户反馈或者更复杂的交互式内容。在本案例中...
在IT行业中,弹出窗口(通常指的是模态窗口)是一种常见的用户界面设计,用于提供额外的信息或交互功能,而不中断用户对主界面的操作。在这个"弹出窗口互相传值范例"中,我们将会探讨如何在不同的弹出窗口之间传递...
描述中提到“有弹出层源码,有demo”,这表明该插件提供了完整的源代码供开发者查看和学习,这对于理解插件的工作原理以及进行二次开发非常有利。同时,附带的demo(演示)可以让用户快速了解插件的基本功能和使用...
jQuery弹出层插件PopupDiv-v1.0是一款基于JavaScript库jQuery开发的用户界面组件,主要用于在网页上创建各种类型的弹出窗口。弹出层在Web应用中非常常见,用于显示通知、对话框、表单、图片轮播等多种功能。PopupDiv...
综上所述,这个"ASP.NET里用DIV层元素弹出窗体源代码"的主题涉及到ASP.NET服务器控件的使用,客户端脚本交互,以及HTML和CSS的布局技巧。通过这些技术的结合,我们可以创建一个自定义、灵活且用户体验友好的弹出窗口...