我试图在 raphael.js 中为计数器设置动画,但我遇到了一个奇怪的行为。在动画中间,文本值等于 NaN
,我不明白为什么。
这是我的代码:
<html>
<head>
<title></title>
<script src="raphael.js"></script>
<script src="jquery.js"></script>
</head>
<body>
<script type="text/javascript">
var r = Raphael(0, 0, 400, 400);
r.ca.strNumber = function (number) {
var str = number + '';
return {"text" : str};
}
$(document).ready( function() {
var t = r.text(200, 200, "1").attr({"font-size": 50, "fill": "black"});
t.animate({"strNumber": 999}, 500);
});
</script>
</body>
</html>
那么它有什么问题呢?如何解决这个问题?
谢谢!
最佳答案
我假设你想做一个从 1 到 999 的动画计数。我不认为 .animate() 可以帮助你做到这一点,你可以使用下面的代码从 1 计数到 10:
<body>
<script type="text/javascript">
var r = Raphael(0, 0, 400, 400);
$(document).ready( function() {
counter = 1;
var t = r.text(200, 200, counter).attr({"font-size": 50, "fill": "black"});
var myTimer = setInterval(function(){
counter ++;
t.attr('text', counter);
if (counter>=10){
clearInterval(myTimer);
}
}, 500);
});
</script>
</body>
关于javascript - Raphael.js 文本值动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19561003/