집 >웹 프론트엔드 >JS 튜토리얼 >JS 열기 레이어/닫기 레이어/이동 레이어 애니메이션 effect_javascript 기술에 대한 예제 코드
JS 열기 레이어/닫기 레이어/이동 레이어 애니메이션 effect_javascript 기술에 대한 예제 코드
- WBOY원래의
- 2016-05-16 17:34:011127검색
css
body,span,div,td {font-size :12px; 줄 높이:1.5em; 색상:#849BCA; }
#bodyL { float:왼쪽; 너비:84px; 여백 오른쪽:2px; }
a.od { 너비:80px; 높이:25px; 줄 높이:25px; 텍스트 정렬:가운데; 글꼴 두께:굵게; 테두리: 2px 단색 #849BCA; 표시:블록; 색상:#547BC9; 부동:왼쪽; 텍스트 장식:없음; 여백 상단:2px; }
a.od:link { 배경:#EEF1F8; }
a.od:visited { 배경:#EEF1F8; }
a.od:hover { 배경:#EEE; }
a.od:활성 { 배경:#EEE; }
#fd { 너비:500px; 높이:200px; 배경:#EDF1F8; 테두리: 2px 단색 #849BCA; 여백 상단:2px; 여백-왼쪽:2px; 부동:왼쪽; 오버플로:숨김; 위치:절대; 왼쪽:0px; 상단:0px; 커서:이동; float:left;/*filter:alpha(opacity=50);*/ }
.content { padding:10px; }
html
< ;div id="bodyL">
[打开层] [关闭层]
jq
var prox ;
var proy;
var proxc;
var proyc;
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 = parsInt(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 closeed(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 = "없음";
}
}
/*------------------------- --鼠标拖动---------*/
var od = document.getElementById("fd");
var dx,dy ,mx,my,mouseD;
var odrag;
var isIE = document.all ? true : false;
document.onmousedown = function(e){
var e = e ? e : 이벤트;
if(e.button == (document.all ? 1 : 0))
{
mouseD = true;
}
}
document.onmouseup = function(){
mouseD = false;
odrag = "";
if(isIE)
{
od.releaseCapture();
od.filters.alpha.opacity = 100;
}
else
{
window.releaseEvents(od.MOUSEMOVE);
od.style.opacity = 1;
}
}
// function ReadyMove(e){
od.onmousedown = function(e){
odrag = this;
var e = e ? e : 이벤트;
if(e.button == (document.all ? 1 : 0))
{
mx = e.clientX;
my = e.clientY;
od .style.left = od.offsetLeft "px";
od.style.top = od.offsetTop "px";
if(isIE)
{
od.setCapture();
od.filters.alpha.opacity = 50;
}
else
{
window.captureEvents(Event.MOUSEMOVE);
od.style.opacity = 0.5;
}
//alert(mx);
//alert(my);
}
}
document.onmousemove = function(e){
var e = e ? e : 이벤트;
//alert(mrx);
//alert(e.button);
if(mouseD==true && 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;
}
}
성명:본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.