.animate()
配列から作成された方向を持つJQuery を使用して、連続的なアニメーション効果を作成したいと考えています。これは私がこれまでに成功したことです:
var animation = [{"top":80},{"left":130},{"top":200},{"left":0},{"top":0}];
$.each(animation, function(i) {
$('div').animate(animation[i], 1000);
});
しかし、次のように各要素属性に配列を保存したいと思います。
<div data-animation='[{"top":80},{"left":130},{"top":200},{"left":0},{"top":0}]'></div>
<div data-animation='[{"top":50},{"left":-30},{"top":100},{"left":80},{"top":75}]'></div>
<div data-animation='[{"top":10},{"left":-30},{"top":100}]'></div>
...だから、複数の要素を異なる方向にアニメーション化できるといいのですが。しかし、属性値をオブジェクトの配列に変換する方法がわかりません (プラグインなしでこれを実行できることを願っています):
$('div').each(function() {
var animation = $(this).data('animation'), // How to convert this into an array?
$animatedbox = $(this);
$.each(animation, function(i) {
$animatedbox.animate(animation[i], 1000);
});
});
ここにデモがあります: http://jsfiddle.net/wthLR/