Closed C-racker closed 3 months ago
建议格式化为 2024-05-25 14:47:19 这样的
想要这样的效果?
似乎简单的设置 relative-time 的lang就能做到这一点,如下 (只是一个简单示例没关心效率,我完全没怎么学过js
function formatTime(timeStr) {
return timeStr.slice(0, 19);
}
function funa(mutations) {
// 更新所有已存在的 <relative-time> 元素
var times = document.getElementsByTagName('relative-time');
for (var i = 0; i < times.length; i++) {
times[i].setAttribute('lang', "zh")
}
};
(function () {
var observer = new MutationObserver(funa);
// 监听 <body> 元素的变化
observer.observe(document.body, {
childList: true,
subtree: true
});
})();
事实上我并不喜欢中文化时间,我想要纯数字时间,但是似乎得调整很多属性,算了中文也差不多。
大脑升级梗图.jpg
(function() {
document.documentElement.lang = 'zh';
})();
似乎直接这样更改也可以达到效果。但是我不确定副作用影响(运行时机建议为document-start)
事实上 GitHub官方是支持了多语言时间的,只是因为默认没使用中文环境罢了。
目前,我使用一个函数formatTime
在处理时间元素时读取datetime
, 并使用toLocaleString('zh-CN')
转换格式, 使用setAttribute
赋值到title
.
函数放到traverseNode
的翻译时间元素过程中
目前使用
(function() {
document.documentElement.lang = 'zh';
})();
效果如下
目前, 仅支持浏览器默认大陆简中的时间格式, 不打算自定义格式(否则,又是基于原有模式, 性能有差别)
这里的日期