gpt4 book ai didi

javascript - 更改跨度内的日期以匹配用户的时区

转载 作者:行者123 更新时间:2023-11-30 18:24:14 27 4
gpt4 key购买 nike

我有这个功能:

function get_time_zone_offset() {   
var current_date = new Date();
return -current_date.getTimezoneOffset() / 60;
}

我想要一个 jQuery 代码来更改每个跨度,其中类是 'timeago' 标题值为其值加上上面函数返回的数字。例如:

之前:

<span class="timeago" title="7/4/2012 9:28:30 AM">7/4/2012 9:28:30 AM</span>

之后:

<span class="timeago" title="7/4/2012 12:28:30 PM">7/4/2012 12:28:30 PM</span>

最佳答案

假设 7/4/2012 9:28:30 AM 表示 UTC,您可以让 Date 对象执行所有数学运算:

function formatDate(d) {
var yy = d.getFullYear();
var mm = d.getMonth() + 1;
var dd = d.getDate();
var hh = d.getHours();
var ii = d.getMinutes();
var ss = d.getSeconds();
var ap;
if (hh < 12) {
if (hh === 0) {
hh = 12;
}
ap = "AM";
}
else {
if (hh > 12) {
hh -= 12;
}
ap = "PM";
}
return mm + "/" + dd + "/" + yy + " " + hh + ":" + ii + ":" + ss + " " + ap;
}
$("span.timeago").each(function() {
var dateInput = $(this).text();
var dateInUTC = new Date(dateInput + " +0000"); // note: +0000 is the key
var dateOutput = formatDate(dateInUTC);
$(this).attr("title", dateOutput).text(dateOutput);
});

这假设日期是可解析的。这是 a demo .

关于javascript - 更改跨度内的日期以匹配用户的时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11325852/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com