2 つのボタンがあります。1 つは (さまざまなサイズの) div を 10 倍大きくし、もう 1 つは 10 倍小さくします。ボタンを 2 回クリックして小さくすると、div はゼロに丸められます。大きくなるボタンを何回クリックしても、ゼロの値を乗算しているため、大きくなりません。これを修正する標準的な方法は何ですか? 私のアプリケーションでは、一部の div が他の div よりもはるかに大きいため、これが必要です。そのため、1 つの div は幅が 1 ピクセル未満になりますが (当然ながら非表示になります)、他の部分は数千ピクセルの幅になります。
更新: 私の div は、実際には惑星の直径を表す円です。私はこれらが正確である必要があります!小さいボタンを 5 回クリックすると、大きいボタンを 5 回クリックして、最初の正確な直径に戻すことができます。
また、div を無限に小さくしたり大きくしたりする必要はおそらくないでしょう。それに制限をかける標準的な方法は何ですか?私が達成しようとしていることの例については、私の jsfiddle を参照してください。http://jsfiddle.net/dfjosh/vtxeD/12/
HTML
<a href="javascript:;" class="smaller">smaller</a>
<a href="javascript:;" class="larger">larger</a>
<div></div>
CSS
div {
width: 50px;
height: 50px;
background: cornflowerblue;
}
JavaScript
$('a').click(function() {
if($(this).hasClass('smaller')) {
var element = $('div');
element.animate({
'width' : element.width() * 0.1,
'height' : element.height() * 0.1
});
} else if($(this).hasClass('larger')) {
var element = $('div');
element.animate({
'width' : element.width() * 10,
'height' : element.height() * 10
});
}
});