在Jquery中设置html元素的动画

在Jquery中设置html元素的动画,jquery,jquery-plugins,Jquery,Jquery Plugins,“监视器”是一个框,每当鼠标悬停在页面(web)的某个部分时,它都会显示放大的文本 “+”和“-”是分别帮助我增大和减小框大小的两个按钮 当框中的文本溢出框并使我的代码看起来效率低下时,就会出现问题。下面是一个使加号按钮增加框大小(文本大小)的示例 简单地说,我只想对这个框进行一些限制,使它的大小得到一个阈值和一个最大值 $('div.monitor').animate({ 'fontSize': '+=10pt' }, 'fast'); return false; break; 我不喜欢@R

“监视器”是一个框,每当鼠标悬停在页面(web)的某个部分时,它都会显示放大的文本

“+”和“-”是分别帮助我增大和减小框大小的两个按钮

当框中的文本溢出框并使我的代码看起来效率低下时,就会出现问题。下面是一个使加号按钮增加框大小(文本大小)的示例 简单地说,我只想对这个框进行一些限制,使它的大小得到一个阈值和一个最大值

$('div.monitor').animate({ 'fontSize': '+=10pt' }, 'fast'); return false; break;

我不喜欢@Raminson给出的另一个答案的逻辑。它说“如果字体的大小小于40px,则将字体大小增加10”。那么大小限制(盒子容器)的最大值可能是49px(如果初始条件是=39px)。我会这样做:

while ($('div.monitor').css('font-size') != "40px") {
    $('div.monitor').animate({ 'fontSize': '+=1px' }, 'fast');
}
这样,它一次增加1,并达到所需的值=40px

你甚至可以:

while ($('div.monitor').css('font-size') != "40px") {
    $('div.monitor').css( 'fontSize', '+=1px');
}

它看起来就像一部动画

我不明白。。。为什么不能通过减少.animate方法中的加法来实现呢?你所说的阈值是什么意思?只是在框大小上加上一些最小值和最大值,这样它就不会超过这些限制。我使用一个switch语句,如果一些人使用switch语句按下a..>b c..>d,那么我就不能使用if或while等。这是什么意思?在什么情况下使用switch语句不允许在其内部使用while循环?我使用的是$('html').keydown(函数(事件){var requestedAction=null;开关(事件.keyCode){/*+*/case 107:while($('div.monitor').css('font-size')!=“40px”){$('div.monitor').css)('fontSize','+=5px');}返回false;break;我做得对吗?