CSS 在确切日期后淡出

CSS fade after an exact date

如何在确切日期之后更改 text/div/pic?

例如,这里有一段代码可以像叠加层一样更改 div。 当确切的日期过去时,我希望得到那个结果。

因此,例如在 2018.01.01 之后,div 会自动变为灰色。我应该如何编码?尖端? :)

$(document).ready(function() {
    $("#myDiv").click(function() {
        $("#overlay").show();
    });
});
#myDiv {
    width:100px;
    height:100px;
    background-color: yellow;
    margin: 50px 50px;
    padding:10px;
}

#overlay {
    display:none;
    position: absolute;    
    width:100px;
    height:100px;
    background-color: gray;
    top: 50px;
    left: 50px;
    padding: 10px;
    opacity: .8;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="myDiv">
<p>Some text</p>
<input type="button" value="A button" >
</div>

<div id="overlay"></div>

http://jsfiddle.net/QQRZc/

您获取当前日期+时间,并从目标日期+时间中减去它,这将导致到目标日期+时间的秒数。 This answer gives a good working example for javascript,但您也可以 pre-calculate 这个服务器端,例如PHP.

// Then a simple settimeout will do the rest:
setTimeout(
    function(){ $("#overlay").show(); },
    secondsTillTarget*1000
);