我有两个按钮,一个使 div(不同大小)变大 10 倍,另一个使它们变小 10 倍。两次单击使它们变小的按钮后,div 舍入为零。无论您单击多少次使其变大的按钮,它都不会变大,因为它乘以零值。解决此问题的标准方法是什么?这是必要的,因为在我的应用程序中,一些 div 比其他 div 大得多,所以虽然一个 div 将小于一个像素宽(然后理所当然地不可见),但其他 div 将有数千个像素宽。
更新:我的 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
});
}
});