javascript - 将元素值与当前日期进行比较

标签 javascript jquery html css

我正在开发一个 JavaScript 函数,试图从 span 获取值并将该值与今天的 date 进行比较

逻辑是:

如果跨度日期超过 30 天,将其背景颜色更改为绿色

如果跨度日期超过 60 天,将其背景颜色更改为蓝色

如果跨度日期超过 90 天,将其背景颜色更改为红色

我目前的跨度是:

<span class="awsome">02/04/2011</span>
var s =`$('.awsome span').text();`    
alert(s);

我想将它与:

var d = new Date();
var strDate = d.getFullYear() + "/" + (d.getMonth()+1) + "/" + d.getDate();

我的问题是如何同时比较和更改颜色?

最佳答案

$(document).ready(function() {
    function parseDate(str) {
        var mdy = str.split('/')
        return new Date(mdy[2], mdy[0]-1, mdy[1]);
    }

    function daydiff(first, second) {
        return (second-first)/(1000*60*60*24);
    }

    var today = new Date();
    console.log(today);
    $('.awesome').each(function() {
		var newDate = parseDate($(this).html());
        console.log(newDate);
        var difference = Math.abs(daydiff(newDate, today));
        if (difference > 90) {
        	$(this).css('background-color', 'red');
        }
        else if (difference > 60) {
        	$(this).css('background-color', 'blue');
        }
        else if (difference > 30) {
        	$(this).css('background-color', 'green');
        }
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span class="awesome">02/04/2011</span>
<span class="awesome">02/04/2016</span>
<span class="awesome">02/04/2015</span>
<span class="awesome">09/04/2015</span>
<span class="awesome">10/04/2015</span>
<span class="awesome">11/04/2015</span>

关于javascript - 将元素值与当前日期进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32383456/

相关文章:

javascript - 多行 jquery 工具提示

javascript - 为每个 block 设置 data.formData

javascript - Reactjs Warning : input is a void element tag and must not have `children` or use `props.dangerouslySetInnerHTML` . 检查null的render方法

javascript - D3点击事件返回空属性

javascript - Uncaught ReferenceError : Invalid left-hand side in assignment

Javascript jquery - 未捕获的类型错误 : Illegal invocation

jquery - 下拉菜单无法正常工作

javascript - 不使用Javascript将标题移动到div上方

javascript - 在 javascript 中解构嵌套对象 |解构二级父子对象

javascript - 坚持将 css 类添加/切换到 jquery 中的 html 元素