编辑:已解决。我只需要在newWidthO和newWidthP上调用.toString。我会回答我的问题,但由于声誉的原因,我不能在8个小时左右的时间内完成。
- = --------------------------------
我正在编写一个简单的反射型游戏,玩家必须在一段时间内点击移动的div。与赢得比赛所需的点数相比,一个横杆应该向右移动,与玩家的总积分成比例。
以下是代码:
var newWidthO = (((parseInt(reflexPointsAI, 10) / reflexRequiredWinPoints)*100)) + "%";
var newWidthP = (((parseInt(reflexPoints, 10) / reflexRequiredWinPoints)*100)) + "%";
$("#reflexTimer").html(newWidthO + " , " + newWidthP);
// $("#reflexOpponentScoreProgressBar").css('width', newWidthO );
//$("#reflexPlayerScoreProgressBar").css('width', newWidthP );
$("#reflexOpponentScoreProgressBar").animate( {"width" : newWidthO }, "fast" );
$("#reflexPlayerScoreProgressBar").animate( {"width" : newWidthP }, "fast" );
我遇到的问题是动画似乎不适用。此操作每四分之一秒调用一次。
如果我用newWidthO
或newWidthP
代替文字,说“50%”,代码动画正常,但似乎没有任何事情发生。 reflexTimer
div显示每个值的格式都适合CSS样式表,如'20%'等,所以我知道值是正确的。注释掉的两条线工作正常并将条形图捕捉到正确的位置,但我希望使用动画的平滑过渡。
我是否遗漏了一些关于如何格式化动画参数的内容?我看过其他类似的问题,但似乎没有解决它。
答案 0 :(得分:0)
以下是解决方案:为newWidthO和newWidthP调用.toString()。