* =は有効なJavaScript代入演算子です。なぜプロパティ値をアニメートするのに使用できないのですか?以下のコードは機能しません。幅と高さを2倍にするだけです。
$("div.box").animate({
"width" : "*=2",
"height" : "*=2",
}, "slow");
回答:
回答№1は6まだ誰も実装していないからといって、うまくいきません。 世界jQueryの方が少し良いです、ちょうど 「Contribut to jQuery」ページをご覧ください。.
今のところあなたの問題を解決するために:あなたはあなた自身で計算をしなければなりません - 次のようなもの(テストされていませんが、あなたはアイデアを得るべきです):
単一要素の場合
var element = $("#animate");
element .animate({
"width" : element.width()*2,
"height" : element.height()*2,
}, "slow");
複数の要素の場合:
$(".animate").each(function(){
var element = $(this);
element .animate({
"width" : element.width()*2,
"height" : element.height()*2,
}, "slow");
});
回答№2の場合は1
根本的に、あなたはそれを通過しようとしているので式の結果ではなく式リテラル。違いを理解するためにjQueryはそれ自身の中に処理を持っていません。そしてそれはなぜでしょうか。 jQueryは、その中にJavascriptインタプリタ全体を配置する必要はありません。これは深刻な問題です。
一番近いのは「」です。
var divbox = $("div.box");
divbox.animate({
width: (divbox.width() * 2) + "px",
height: (divbox.height() * 2) + "px"
});