实时计时器元素
我们已经有了<time-formatted>
元素来显示格式良好的时间。
创建<live-timer>
元素来显示当前时间
- 它应该在内部使用
<time-formatted>
,而不是重复其功能。 - 每秒钟更新一次。
- 对于每次更新,应该生成一个名为
tick
的自定义事件,并将当前日期放在event.detail
中(参见章节派发自定义事件)。
用法
<live-timer id="elem"></live-timer>
<script>
elem.addEventListener('tick', event => console.log(event.detail));
</script>
演示
请注意
- 当元素从文档中移除时,我们清除
setInterval
计时器。这很重要,否则它会继续计时,即使不再需要了。浏览器也无法从该元素及其引用的内存中清除。 - 我们可以通过
elem.date
属性访问当前日期。所有类方法和属性都是元素方法和属性。