<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>move</title>
<style type="text/css">
body{
font-size:12px;
color:#849BCA;
}

#btn{
float:left;
}

#move{
width:500px;
height:200px;
background:#EDF1F8;
border: 2px solid #849BCA;
float:left;
overflow:hidden;
position:absolute;
left:80px;
top:50px;
cursor:move;
}

.content{
padding:10px;
}
</style>
</head>
<body>
<div id="btn">
<input type="button" value="打开" onclick="sw(this,'move');"/>
</div>
<div id="move" style="display:none;filter:alpha(opacity=100);opacity:1;">
<div class="content">移动层</div>
</div>

<script type="text/javascript">
var prox;
var proy;
var proxc;
var proyc;

function sw(o,id){
if (o.value=="打开"){
o.value="关闭";
show(id)
}
else{
o.value="打开"
close(id)
}
}

function show(id){/*--打开--*/
clearInterval(prox);
clearInterval(proy);
clearInterval(proxc);
clearInterval(proyc);
var o = document.getElementById(id);
o.style.display = "block";
o.style.width = "1px";
o.style.height = "1px";
prox = setInterval(function(){openx(o,500)},10);
}

function openx(o,x){/*--打开x--*/
var cx = parseInt(o.style.width);
if(cx < x){
o.style.width = (cx + Math.ceil((x-cx)/5)) +"px";
}
else{
clearInterval(prox);
proy = setInterval(function(){openy(o,200)},10);
}
}

function openy(o,y){/*--打开y--*/
var cy = parseInt(o.style.height);
if(cy < y){
o.style.height = (cy + Math.ceil((y-cy)/5)) +"px";
}
else{
clearInterval(proy);
}
}

function close(id){/*--关闭--*/
clearInterval(prox);
clearInterval(proy);
clearInterval(proxc);
clearInterval(proyc);
var o = document.getElementById(id);
if(o.style.display == "block"){
proyc = setInterval(function(){closey(o)},10);
}
}

function closey(o){/*--打开y--*/
var cy = parseInt(o.style.height);
if(cy > 0){
o.style.height = (cy - Math.ceil(cy/5)) +"px";
}
else{
clearInterval(proyc);
proxc = setInterval(function(){closex(o)},10);
}
}

function closex(o){/*--打开x--*/
var cx = parseInt(o.style.width);
if(cx > 0){
o.style.width = (cx - Math.ceil(cx/5)) +"px";
}
else{
clearInterval(proxc);
o.style.display = "none";
}
}
/*-------------------------鼠标拖动---------------------*/
var od = document.getElementById("move");
var dx,dy,mx,my,mouseD;
var odrag;
var isIE = document.all ? true : false;
document.onmousedown = function(e){
var e = e ? e : event;
mouseD = true;
}
document.onmouseup = function(){
mouseD = false;
odrag = "";
if(isIE)
{

od.filters.alpha.opacity = 100;
}
else
{

od.style.opacity = 1;
}
}

od.onmousedown = function(e){
odrag = this;
var e = e ? e : event;
mx = e.clientX;
my = e.clientY;
od.style.left = od.offsetLeft + "px";
od.style.top = od.offsetTop + "px";
if(isIE){
od.filters.alpha.opacity = 50;
}
else{
od.style.opacity = 0.5;
}
}
document.onmousemove = function(e){
var e = e ? e : event;
if(odrag){
var mrx = e.clientX - mx;
var mry = e.clientY - my;
od.style.left = parseInt(od.style.left) +mrx + "px";
od.style.top = parseInt(od.style.top) + mry + "px";
mx = e.clientX;
my = e.clientY;
}
}
</script>
</body>
</html>
posted on 2009-03-08 12:39  Dacia  阅读(391)  评论(0编辑  收藏  举报