Javascript弹出式警报-内部倒计时天数警报(7-0天)

时间:2019-04-24 06:23:10

标签: javascript html angularjs momentjs backend

我有一个JS和HTML弹出警报,如果票证超过7天必须弹出。当票证弹出时,用户还有7天的时间来响应票证,因此累计了14天。

我的问题如下:如果出现弹出窗口,它必须在警报中显示一个人有7天时间响应票证,但在警报中,这7天必须每24天在警报中删除一天小时,但我似乎为此感到挣扎,我有一些屏幕截图和代码,也许我遗漏了一些东西或向我展示了我可以添加或执行的操作。

HTML / JS警报弹出窗口

谢谢。

1 个答案:

答案 0 :(得分:0)

请弄清楚我是否正确,这些应该是显示的剩余时间:

 7 days old --> showing 7 days left
10 days old --> showing 4 days left
13 days old --> showing 1 day left
14 days old --> showing 0 days left

在代码中应显示为:

let eventDate= moment(lastEvent.event_date_time);
let dayDifference = moment().diff(eventDate, 'days');

// Even if the popup appears after 7 days, we can still use the total time 
// of 14 days for calculation of the remaining time to be shown.
$scope.tempData.autoClosedDaysLeft = (14 - dayDifference < 0) ? 0 : (14 - dayDifference);

// if the remaining time equals 0, "showAutoCloseAlert" should be set to true.
$scope.tempData.showAutoCloseAlert = ($scope.tempData.autoClosedDaysLeft === 0);

顺便说一句,它应该读为“ previousEvent ”而不是“ prevoisEvent ”:-)

这里是Fiddle,如果您正在寻找它,它应该会告诉您。