Javascript 如何将html时间与当前时间进行比较并更改颜色

Javascript 如何将html时间与当前时间进行比较并更改颜色,javascript,html,Javascript,Html,因此,我有一个td标签中包含不同时间的表。 我想将tds中的时间与当前时间进行比较,并根据当前时间通过javascript更改颜色: 你能告诉我,在我的代码底部的if参数/比较中,我必须放些什么吗 <div class="container"> <div class="row"> <div class="col-lg-12"> <table class="table">

因此,我有一个td标签中包含不同时间的表。 我想将tds中的时间与当前时间进行比较,并根据当前时间通过javascript更改颜色:

你能告诉我,在我的代码底部的if参数/比较中,我必须放些什么吗

<div class="container">
    <div class="row">
        <div class="col-lg-12">
            <table class="table">
                <thead>
                    <tr>
                        <th>FlightNr</th>
                        <th>from</th>
                        <th>scheduled</th>
                        <th>Gate</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                        <td>KP7809</td>
                        <td>Queilén</td>
                        <td class="time">06:30</td>
                        <td>M13</td>
                    </tr>
                    <tr>
                        <td>BR2168</td>
                        <td>Gargazzone/Gargazon</td>
                        <td class="time">07:45</td>
                        <td>N12</td>
                    </tr>
                    <tr>
                        <td>GN5746</td>
                        <td>Surat</td>
                        <td class="time">08:50</td>
                        <td>X58</td>
                    </tr>
                </tbody>
            </table>
        </div>
    </div>
</div>

<script>
    var now = new Date();
    var h = now.getHours();
    var m = now.getMinutes();
    var x = document.getElementsByClassName("time");
    for (var i = 0; i < x.length; i++) {
        if(time in td tags are older than current time)
        x[i].style.color ="red";
    }
</script>

航班号
从…起
预定
大门
KP7809
奎莱恩
06:30
M13
BR2168
加加松/加加松
07:45
N12
GN5746
苏拉特
08:50
X58
var now=新日期();
var h=now.getHours();
var m=now.getMinutes();
var x=document.getElementsByClassName(“时间”);
对于(变量i=0;i
您必须将值从字符串转换为整数。之后,您可以将其与当前时间进行比较。因此,您的循环如下所示:

var hoursInTd = parseInt(x[i].innerText.split(':')[0]) 
var minutesInTd = parseInt(x[i].innerText.split(':')[1])

if (hoursInTd > h) {
   // hours in td are later
   x[i].style.color ="red";
} else if (hoursInTd === h && minutesInTd > m) {
   // hours are same, but the minutes are later
   x[i].style.color ="red";
}

希望有帮助。

将时间转换为日期对象,并将其与当前日期进行比较

var now=newdate();
var x=document.getElementsByClassName(“时间”);
对于(变量i=0;i

航班号
从…起
预定
大门
KP7809
奎莱恩
06:30
M13
BR2168
加加松/加加松
07:45
N12
GN5746
苏拉特
08:50
X58

我用时间戳比较了当前日期和您想要的日期。 请注意,我假设表上的日期是今天的同一天。干杯

var now=newdate();
var timeContainers=document.getElementsByClassName(“时间”);
对于(var i=0;i0){
时间容器[i].style.color='red';
}
}

航班号
从…起
预定
大门
KP7809
奎莱恩
06:30
M13
BR2168
加加松/加加松
07:45
N12
GN5746
苏拉特
08:50
X58
GN5746
苏拉特
18:50
X58

您应该先尝试任何方法来处理JavaScript的日期对象!此外,您没有指定比较。作为提示,您必须将当前时间和从表中收集的时间转换为时间戳整数。我的回答是否回答了您的问题?如果是的话,你能接受吗