时间列表范围列表怎么精准定位

有一个时间列表范围,怎么根据当前时间精准定位到当前的范围,并且添加样式。


//初始化时间列表
initTimeList();
function initTimeList(){
    let $timeList = $("#timeList");
    let str = new Array(1440).fill("0").map((val,index)=>{
        //分钟数整除60为小时,余数为分钟数
        let minute = parseInt(index%60);
        let hour = parseInt(index/60);
        let minutes = parseInt(minute+1);
        if(parseInt(index%60)==59){
            var hours = hour+1;
            minutes = 0;
            let st = ("0" + hour).slice(-2) + ":"+ ("0" + minute).slice(-2);
            let end = ("0" + hours).slice(-2) + ":"+ ("0" + minutes).slice(-2);
            // console.log(st)    
            // console.log(st.slice(-2)) //分钟
            // console.log(st.slice(0,2)) //小时
            return `<li data-st="${st}:00" data-end="${end}:00" data-pos="${st}">${st}-${end}</li>`;
        }else{    
            let st = ("0" + hour).slice(-2) + ":"+ ("0" + minute).slice(-2);
            let end = ("0" + hour).slice(-2) + ":"+ ("0" + minutes).slice(-2);        
            return `<li data-st="${st}:00" data-end="${end}:00" data-pos="${st}">${st}-${end}</li>`;
        }

    });
    
    str.unshift(`<li data-st="00:00:00" data-end="24:00:00">全天</li>`);
    $timeList.empty().html(str);
    $timeList.on("click",function(e){
        $(e.target).addClass("selected").siblings().removeClass("selected");
        let date = $date.val().replace(/年|月/g,"-").replace(/日/g,"");
        //echarts图dataZomm开始时间
        selectedStartTime = new Date(`${date} ${$(e.target).data("st")}`).getTime();
        //echarts图dataZomm开始时间
        selectedEndTime = new Date(`${date} ${$(e.target).data("end")}`).getTime();
        locate(selectedStartTime,selectedEndTime);
    });