我實現了一個詳細的功能的客戶端,很容易把你想要的任何內容..
http://jsfiddle.net/gschutz/393Cb/1/
function increase(event){
$this = $(event.target);
if($(".bigger").length > 0)
decrease($(".bigger"));
$fixed_corner = $this.attr("rel").split(":");
if(!$this.hasClass("bigger")){
$new = $this.clone();
$new.insertAfter($this);
$new.css("position", "absolute").addClass("bigger");
var offset = $this.position(), w = $this.outerWidth(true), h = $this.outerHeight(true);
if($fixed_corner[0] == "top")
$new.css("top", offset.top);
else
$new.css("bottom", offset.top-h);
if($fixed_corner[1] == "left")
$new.css("left", offset.left);
else
$new.css("right", offset.left-w);
$new.animate({width: "+=50", height: "+=30", backgroundColor: "#eee"});
console.log($fixed_corner);
} else {
decrease($this);
}
}
function decrease($this){
$this.animate({width: "-=50", height: "-=30", backgroundColor: "#aaa"}, 300, function(){$(this).remove();});
}
你可以添加其他的方式來調整對象。
只是要小心div的大小。
使用絕對定位,操縱'頂部,左側,寬度,高度'屬性。沒有簡單的方法 – Peter
但是,這種平滑的過渡(就像你從拐角處抓住一扇窗戶)不會在那裏,對嗎?你認爲有什麼辦法來保持流體動畫? – ahammond
會有相同的轉變。 [查看關鍵詞「easing」](http://api.jquery.com/animate/) – Peter