DIV模拟弹出窗口(支持拖动)

原创 2007年09月25日 11:46:00

 现在高版本浏览器都可以设置对弹出窗口进行拦截,所有的浏览器工具条等都对弹出窗口进行拦截,但是有时候我们确实需要弹出窗口。针对这些我们做了一个简单的效果,没有做太多的测试,只是示意一下!

<html>
<head>
<title>div弹出窗口</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">
<!--
#drag{
 width:250px;
 height:20px;
 border:1px solid #333;
 position:absolute;
 top:17px;
 left:187px;
 z-index:9999;
 text-align:center;
 overflow: visible;
 visibility: hidden;
 }
-->
</style>
<script type="text/javascript">
<!--
window.onload=function(){
 drag(document.getElementById('drag'),document.getElementById('lstd'));
};
function drag(o,ot){
 ot.onmousedown=function(a){
  var d=document;if(!a)a=window.event;
  var x=a.layerX?a.layerX:a.offsetX,y=a.layerY?a.layerY:a.offsetY;
  if(ot.setCapture)
   o.setCapture();
  else if(window.captureEvents)
   window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);

  d.onmousemove=function(a){
   if(!a)a=window.event;
   if(!a.pageX)a.pageX=a.clientX;
   if(!a.pageY)a.pageY=a.clientY;
   var tx=a.pageX-x,ty=a.pageY-y;
   o.style.left=tx;
   o.style.top=ty;
  };

  d.onmouseup=function(){
   if(o.releaseCapture)
    o.releaseCapture();
   else if(window.captureEvents)
    window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
   d.onmousemove=null;
   d.onmouseup=null;
  };
 };
}
//-->

function showwin()
{
//visibility: visible;
 if(document.getElementById('drag').style.visibility!="visible")
 {
  document.getElementById('drag').style.visibility="visible";
  document.getElementById('drag').style.left=((document.body.clientWidth-400)/2);
  document.getElementById('drag').style.top=50;
 }
 
}
function closewin()
{
//visibility: visible;
 if(document.getElementById('drag').style.visibility!="hidden")
 {
  document.getElementById('drag').style.visibility="hidden";
  document.getElementById('drag').style.left=((document.body.clientWidth-400)/2);
  document.getElementById('drag').style.top=100;
 }
}
</script>
</head>
<body bgcolor="#FFFFFF" text="#000000">
      <table width="768" border="0" cellspacing="0" cellpadding="0" align="center">
      
        <tr>
          <td width="770" height="25" align="center">
          <div id="drag">
<table width="250" height="110" border="0" cellpadding="0" cellspacing="0">
        <tr>
          <td height="25" background="top_bg.gif"><table width="100%" border="0" cellspacing="2" cellpadding="2">
            <tr>
              <td width="98%" nowrap id="lstd" style="cursor:move; font-size:14px;"><strong><!--标题开始-->DIV窗口测试<!--标题结束--></strong></td>
              <td align="right" onClick="closewin()" style="cursor:hand;" nowrap title="关闭">[X]</td>
            </tr>
          </table></td>
        </tr>
        <tr>
          <td valign="top" bgcolor="#FFFFFF" style=" font-size:12px;"><!--内容开始--><br>
&nbsp;这里可以放窗口内容<!--内容结束--></td>
        </tr>
      </table></div>
          </td>
        </tr>
      
      </table>
    
</body>
</html>
<script language="javascript">
showwin();
</script>

 示例文件:下载
由于上传文件的功能出错,所以把文件当作图片上传,下载后只需要把文件名中的".jpg"去掉就可以打开了

版权声明:本文为博主原创文章,未经博主允许不得转载。

可拖动、可关闭、透明标题的DIV弹出窗口,完美兼容各个浏览器

可拖动、可关闭、透明标题DIV百变窗口 .mask{position: absolute; top: 0px; left: 0px; filter: alpha(opacity=50);...
  • kingboy123000
  • kingboy123000
  • 2013年12月04日 11:33
  • 3338

DIV弹出层 可移动 可关闭,demo直接使用

DIV弹出层 可移动 可关闭,demo直接使用
  • netuser1937
  • netuser1937
  • 2017年02月08日 08:52
  • 972

弹出层,随意拖拽的网页弹出框JS特效

弹出层随意拖拽JS特效   body,div,h2{margin:0;padding:0;} body{background:url(/jscss/demoimg/201301/bg.jpg);...
  • wellway
  • wellway
  • 2015年09月12日 23:49
  • 2153

漂亮的Js拖动层,窗口拖拽(改变大小/最小化/最大化/还原/关闭)

漂亮的JS窗口拖拽(改变大小/最小化/最大化/还原/关闭),特点:① 窗口可以拖动;② 窗口可以通过八个方向改变大小;③ 窗口可以最小化、最大化、还原、关闭;④ 限制窗口最小宽度/高度。...
  • life66881
  • life66881
  • 2015年03月08日 14:48
  • 1275

用jQuery实现弹出窗口弹出div层

通过今天的jquery实例学习,我们要达到这样的效果:点击页面的链接,弹出一个div层,同时页面的其他部分变灰并且不能点击;无论是改变浏览器窗口大小还是下拉滚动条,这个弹出层都能始终保持居中;点击页面...
  • samruo
  • samruo
  • 2017年01月09日 16:06
  • 3088

弹出窗口(DIV浮动)

widget.css: .widget_newfolder .p1 { font-size: 20px; } .widget_newfolder .p2 { margin-top: 15px; }...
  • hutao1101175783
  • hutao1101175783
  • 2013年10月05日 23:04
  • 1945

Jquery+div+css实现弹出登录窗口

基本思路先隐藏(dispaly:none)再显示,半透明蒙版层通过z-index:9998;z-index:9999;值越大越在前面index.html jquery点击弹出登陆窗口 jQ...
  • jethai
  • jethai
  • 2016年08月28日 14:05
  • 1369

js控制div弹出层

这个弹出层 的功能很好,且容易调用和控制: 弹出窗口(可拖动,背景灰色透明) /*FileName:AlertMsg.js title:提示标题 content:提示的...
  • fanyuna
  • fanyuna
  • 2014年01月06日 16:33
  • 2665

用jQuery实现弹出窗口/弹出div层

原文链接:http://hi.baidu.com/awz_tiger/item/863cfc10c4bb0f6171d5e8d9 http://blog.163.com/qiuxinke2006...
  • dmtnewtons
  • dmtnewtons
  • 2013年08月29日 11:33
  • 8662

弹出可拖动div层提示窗口

DIVCSS5可拖动DIV提示窗口 function alertWin(title, msg, w, h){ var titleheight = "22px"; // 提示窗口标题高度 va...
  • paopao_2017
  • paopao_2017
  • 2018年01月12日 11:05
  • 5
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:DIV模拟弹出窗口(支持拖动)
举报原因:
原因补充:

(最多只允许输入30个字)