我有一个div/tab设置为在今年2月1日之后显示。这很有效,直到这个月结束,然后div再次被隐藏。我希望div永远保持打开状态。第一个选项卡设置为在2月1日显示,第二个选项卡设置为在14日显示。这是我的代码。
<style>
.disable-1, .disable-2 {
display: none;
}
.enabled {
display: block;
}
</style>
<ul class="tabs">
<!-- THIS UL CREATES THE TABS == Just add/remove LIs as neeed to create them. Be sure the IDs of the sections match -->
<li><a href="#PLY-EC-001-1">Tab 1</a></li>
<li class="disable-1"><a href="">Tab 2</a></li>
<li class="disable-2"><a href="">Tab 3</a></li>
<
</ul>
<script>
// get current date on page load
var date = new Date();
// ask for specific date
if (date.getFullYear() >= 2020 && date.getMonth() >= 1 && date.getDate() >= 1) {
// get first dom-element with that class
var li = document.getElementsByClassName('disable-1');
// if dom-element exists
if (li.length > 0) {
// set classname
li[0].className = 'enabled';
}
}
if (date.getFullYear() >= 2020 && date.getMonth() >= 1 && date.getDate() >= 14) {
// get first dom-element with that class
var li = document.getElementsByClassName('disable-2');
// if dom-element exists
if (li.length > 0) {
// set classname
li[0].className = 'enabled';
}
}
</script>发布于 2020-02-04 18:51:32
不需要通过逻辑AND检查年、月和当前日期,只需检查当前日期是否大于特定的时间戳(在您的示例中为2020-02-01:00:00:00):
var date = new Date();
var refd = new Date(2020,1,1,0,0,0); // <-- Reference date
// compare if now (date) is bigger than reference (refd)
// by comparing the milliseconds since 1970-01-01
if (Number(date) >= Number(refd)) // <-- compare
{
// ... elided, as before
}发布于 2020-02-04 18:43:08
<script type="text/javascript">
function displayDiv()
{
var d = new Date();
var strDate = d.getDate();
if(strDate == '1')
document.getElementById('HelloWorld').visible= true;
}
</script>
<form onLoad="displayDiv()" method="GET">
<div id="HelloWorld" style="display:none;"></div>
</form>https://stackoverflow.com/questions/60055408
复制相似问题