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

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

<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.οnlοad=function(){
 drag(document.getElementById('drag'),document.getElementById('lstd'));
};
function drag(o,ot){
 ot.οnmοusedοwn=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.οnmοusemοve=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.οnmοuseup=function(){
   if(o.releaseCapture)
    o.releaseCapture();
   else if(window.captureEvents)
    window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
   d.οnmοusemοve=null;
   d.οnmοuseup=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"去掉就可以打开了

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值