Primefaces扩展计时器

时间:2018-02-12 09:31:59

标签: primefaces timer momentjs primefaces-extensions

我正在尝试以这样的格式制作primefaces extentions倒计时器:

时间重播:3天,01:15:22

所以我添加了pe:timer组件并设置了这样的格式:

<pe:timer id="time_remaning" timeout="800" format="DDD [days,] HH:mm:ss" immediate="true"/>

但它没有按预期工作。我越来越: 1天,00:13:20

但超时的“天”部分应为0而不是1.我的编码器中是否有错误?我从here获得了格式化参数,如文档中所述。

或者我是否需要在此示例中使用自定义formatFunction,或者有没有办法只使用formater执行此操作?

1 个答案:

答案 0 :(得分:2)

我无法使用formater工作,所以我使用了functionFormater来完成工作。

这是我的.xhtml代码:

<pe:timer id="time_remaning" timeout="#{myBean.getTimeForTimeoutInSeconds()}" 
    formatFunction="return formatMe(value);" />

.js格式函数:

window.formatMe = function (value) {
    var numDays = Math.floor(value / 86400);
    var numHours = Math.floor((value % 86400) / 3600);
    var numMinutes = Math.floor(((value % 86400) % 3600) / 60);
    var numSeconds = ((value % 86400) % 3600) % 60;
    return numDays + " dni, " + pad(numHours, 2) + " : "
        + pad(numMinutes, 2) + " : " + pad(numSeconds, 2) + " ";
}

function pad(num, size) {
    var s = num+"";
    while (s.length < size) s = "0" + s;
    return s;
}