點選上面這張圖片就可以看到效果~
這是模仿之前大海嘯日本衛星空照圖前後對照圖的一個效果
在網路上也有相同的 plugin 可以下載
但是想說必須了解真正的原理
就用 jquery 做了一個ㄎㄎ
白人黑人變變變,還滿有趣的吧~
原理其實不難
最主要還是在CSS與jquery的互相作用
CSS程式碼
jquery程式碼
最主要還是在CSS與jquery的互相作用
CSS程式碼
#div1{position:absolute; top:40px; left:50px; width:298px; height:385px; z-index:10; background:url(img/20120511_faceOff.jpg) -300px 0 no-repeat;
border-right:3px solid #09b; border-top:1px solid #000; border-left:1px solid #000; border-bottom1:1px solid #000;}
#div2{position:absolute; top:40px; left:50px; width:300px; height:385px; z-index:9; background:url(img/20120511_faceOff.jpg) 0 0 no-repeat;border:1px solid #000;}
#bar{position:absolute; top:220px; left:344px; width:12px; height:40px; background-color:#069; cursor:e-resize; z-index:100;}
.divCantSelect{ -moz-user-select: -moz-none; -khtml-user-select: none; -webkit-user-select: none; -o-user-select: none; user-select: none;cursor:e-resize;}
#pull{font-size:14px; font-family:Arial; position:absolute; top:230px; left:365px;}
jquery程式碼
$(function(){
var mouse_cx,mouse_cy,mouse_mx,mouse_my,dx,dy,cw,ch,cx,cy,a,b;
$("#bar").mousedown(md);
$(window).mouseup(mu);
function md(c){
$("#pull").fadeOut();
$("body").addClass("divCantSelect");
mouse_cx=c.pageX;
mouse_cy=c.pageY;
cw=$("#div1").width();
ch=$("#div1").height();
cx=$(this).offset().left;
cy=$(this).offset().top;
$(window).bind("mousemove",function(m){
mouse_mx=m.pageX;
mouse_my=m.pageY;
dx=mouse_mx-mouse_cx;
dy=mouse_my-mouse_cy;
a=cx+dx;
if(a<=46){a=46;}
if(a>=344){a=344;}
b=cw+dx;
if(b>=298){b=298;}
if(mouse_mx<=49){b=0;}
$("#div1").css({"width":b+"px"});
$("#bar").css({"left":a+"px"});
});
}
function mu(){
$(window).unbind("mousemove");
$("body").removeClass("divCantSelect");
}
})
沒有留言:
張貼留言