jquery - 如何获取FlipClock的时间?

标签 jquery flipclock

我在我的网站中使用flipClock.js。我想要以秒为单位获取时钟时间。

如何做到这一点?

$('.clock').FlipClock(600, {
            clockFace: 'MinuteCounter',
            countdown: true,
            language: 'fa-ir',
            callbacks: {
                stop: function () {
                $('#timeout-dialog').modal({ backdrop: 'static', keyboard: false });
                }
            }
        });

最佳答案

我打赌你想得到的是time delta ,不仅仅是时间,而是直到/之后的时间,并且在您的情况下,直到FlipClock实例化的那一刻的时间+ 600秒。在 Javascript 中,它通常以毫秒为单位,仅用一个数字来表示。您可以计算此时间增量的方法是在两个回调函数之间共享目标时间,将变量放入外部范围:

let timeStarted = null;
const targetTimeDelta = 5000;
const clock = $('#clock').FlipClock(targetTimeDelta / 1000, {
  clockFace: 'MinuteCounter',
  countdown: true,
  callbacks: {
    start: () => {
      timeStarted = new Date();
    },
    stop: () => {
      const timeStopped = new Date();
      console.log(Number(targetTimeDelta) - Number(timeStopped) + Number(timeStarted));
    }
  }
});

这里,timeStarted 首先在传递给 start 回调的函数范围之外声明。它使得它可以从另一个作用域访问,即传递给 stop 回调的函数的作用域。它还可以从其他任何地方访问它,通常,globals are bad ,但这里仅用于演示目的。也许您已经知道如何正确封装该值,这样它就不会偶尔在代码中的其他地方重新定义。

另请参阅codepen为此。

关于jquery - 如何获取FlipClock的时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40564858/

相关文章:

jquery - 按向上和向下箭头选择 anchor 标记

javascript - 单击某个按钮后 select2 中的动态选项

javascript - Flipclock 插件无法在 Internet Explorer 中运行

javascript - javascript中两个日期之间的时间差?

jquery - 无法在中心对齐 div 的动态内容

javascript - IE8 JS错误: Object doesn't support this property or method

jquery - 并排显示图像 100% 屏幕

jquery - jQuery 选择在幕后是如何工作的?

javascript - Jquery 插件 FlipClockjs 不起作用

javascript - 使 FlipClock.js 从设定日期开始计数