JavaScriptでDivの高さをアニメーション化するためのJqueryの代替手段はありますか? Jqueryは素晴らしく、比較的小さいですが、この1つの機能のためだけにjquery全体をロードしたくありません。これはWebアプリケーション(Webアプリケーションではない)のためのものだと考えて、読み込み時間をできるだけ小さく保つ必要があります。divの高さをアニメーション化するための軽量なJavascript?
おかげ
JavaScriptでDivの高さをアニメーション化するためのJqueryの代替手段はありますか? Jqueryは素晴らしく、比較的小さいですが、この1つの機能のためだけにjquery全体をロードしたくありません。これはWebアプリケーション(Webアプリケーションではない)のためのものだと考えて、読み込み時間をできるだけ小さく保つ必要があります。divの高さをアニメーション化するための軽量なJavascript?
おかげ
function animateHeight(obj, height){
var obj_height = obj.clientHeight;
if(obj_height <= height){ return; }
else {
obj.style.height = (obj_height - 5) + "px";
setTimeout(function(){
animateHeight(obj, height);
}, 500)
}
}
ニースフィドル:あなたはCSSでの仕事の大半を行うことができるようにhttp://jsfiddle.net/maniator/Z6cbq/
WebOSとは、携帯電話のWebKitを使用しています。
#someElement {
-webkit-transition: height 100ms linear;
height: 0;
}
は、その後、あなたのJavaScriptは本当に簡単です:
document.querySelector('#someElement').style.height = '100px'
// - or -
document.querySelector('#someElement').className += ' open';
// where #someElement.open has a defined height.
ここ
は、いくつかの詳細です:http://pre101.com/blog/2009/11/10/a-guide-to-css-transitions-in-webos/
1 KB
の重裸の骨のアニメーションライブラリ:
あなたが探しているものをアニメーション? –
高さを0〜100ピクセル、またはその逆に指定された時間内にアニメートします。 – levi
注記として、[Zepto.js](http://zeptojs.com/)は、Webkit携帯電話でターゲットとされたjQueryの軽量代替品です。しかし、アニメーションには '-webkit-transition'が使用されていますので、スクリプト化された解決策が必要な場合はそれほど役に立ちません。 –