Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/466.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何解决计数器的附加值?_Javascript_Jquery_Html_Css_Counter - Fatal编程技术网

Javascript 如何解决计数器的附加值?

Javascript 如何解决计数器的附加值?,javascript,jquery,html,css,counter,Javascript,Jquery,Html,Css,Counter,我有一个计数器: 函数animateSun(){ var$elie=$(“太阳”); $({ 学位:0 }).制作动画({ 度数:360 }, { 持续时间:190999, “线性”, 步骤:功能(val){ now=数学圆(val); 如果((现在==5)| |(现在==10)| |(现在==15))//每5个值增加一个值 { var i=0; $('tam')。文本(i+=1); } $elie.css({ 变换:'旋转('+now+'deg)' }); $('演示').text('秒:'

我有一个计数器:

函数animateSun(){
var$elie=$(“太阳”);
$({
学位:0
}).制作动画({
度数:360
}, {
持续时间:190999,
“线性”,
步骤:功能(val){
now=数学圆(val);
如果((现在==5)| |(现在==10)| |(现在==15))//每5个值增加一个值
{
var i=0;
$('tam')。文本(i+=1);
}
$elie.css({
变换:'旋转('+now+'deg)'
});
$('演示').text('秒:'+现在);
},
});
}
animateSun()
太阳{
位置:绝对位置;
宽度:55px;
高度:55px;
边框:1px纯红;
背景颜色:橙色;
不透明度:0.9;
边界半径:100%;
文本对齐:居中;
最高:50%;
左:50%;
动画:圆形3s无限线性;
}

0


按照Rejith的建议,将计数器值保留在全局变量中。目前,您每次都将计数器设置为0,然后递增,因此它始终会产生1

var counter = 0;
function animateSun() {
  var $elie = $("#sun");
  $({
    degree: 0
  }).animate({
    degree: 360
  }, {
    duration: 190999,
    easing: 'linear',
    step: function(val) {
      now = Math.round(val);
//          if ((now == 5) || (now == 10) || (now == 15)) //increment the value on every 5 value
      if( now % 5 == 0 )
      {
        $('#tam').text(counter++);
      }
      $elie.css({
        transform: 'rotate(' + now + 'deg)'
      });
      $('#demo').text('sec:' + now);
    },


  });
}
animateSun();

正如Rejith所建议的,将计数器值保留在全局变量中。目前,您每次都将计数器设置为0,然后递增,因此它始终会产生1

var counter = 0;
function animateSun() {
  var $elie = $("#sun");
  $({
    degree: 0
  }).animate({
    degree: 360
  }, {
    duration: 190999,
    easing: 'linear',
    step: function(val) {
      now = Math.round(val);
//          if ((now == 5) || (now == 10) || (now == 15)) //increment the value on every 5 value
      if( now % 5 == 0 )
      {
        $('#tam').text(counter++);
      }
      $elie.css({
        transform: 'rotate(' + now + 'deg)'
      });
      $('#demo').text('sec:' + now);
    },


  });
}
animateSun();

您可以尝试以下方法。将
Math.floor()
应用于
步骤/5

函数animateSun(){
var$elie=$(“太阳”);
$({
学位:0
}).制作动画({
度数:360
}, {
持续时间:190999,
“线性”,
步骤:功能(val){
now=数学圆(val);
$(#tam').text(数学地板(val/5));
$elie.css({
变换:'旋转('+now+'deg)'
});
$('演示').text('秒:'+现在);
},
});
}
animateSun()
太阳{
位置:绝对位置;
宽度:55px;
高度:55px;
边框:1px纯红;
背景颜色:橙色;
不透明度:0.9;
边界半径:100%;
文本对齐:居中;
最高:50%;
左:50%;
动画:圆形3s无限线性;
}

0


您可以尝试以下方法。将
Math.floor()
应用于
步骤/5

函数animateSun(){
var$elie=$(“太阳”);
$({
学位:0
}).制作动画({
度数:360
}, {
持续时间:190999,
“线性”,
步骤:功能(val){
now=数学圆(val);
$(#tam').text(数学地板(val/5));
$elie.css({
变换:'旋转('+now+'deg)'
});
$('演示').text('秒:'+现在);
},
});
}
animateSun()
太阳{
位置:绝对位置;
宽度:55px;
高度:55px;
边框:1px纯红;
背景颜色:橙色;
不透明度:0.9;
边界半径:100%;
文本对齐:居中;
最高:50%;
左:50%;
动画:圆形3s无限线性;
}

0


sun

您需要将计数器定义为全局变量。您需要将计数器定义为全局变量。太好了。谢谢@rejithSo nice。谢谢@rejith