Javascript 如何切换div';每天都有什么活动?

Javascript 如何切换div';每天都有什么活动?,javascript,Javascript,我目前正在一个项目中工作,我的雇主希望在一周内每天更改他的每日报价,现在我已尝试在js中获取我的7个div,并在以下情况下打开和关闭它们: var day = new Date().get Day() if(day == 5){ div.style.display = "block"; //all the other div's would be display none// 我试着在网上搜索类似的问题,但没有解决办法。 我希望我清楚地解释了这个问题。请记住,我目前是js的初学者,我希望听到一

我目前正在一个项目中工作,我的雇主希望在一周内每天更改他的每日报价,现在我已尝试在
js
中获取我的7个div,并在以下情况下打开和关闭它们:

var day = new Date().get Day()
if(day == 5){
div.style.display = "block";
//all the other div's would be display none//
我试着在网上搜索类似的问题,但没有解决办法。
我希望我清楚地解释了这个问题。请记住,我目前是
js
的初学者,我希望听到一个更简单的解决方案。

我会给你所有的div提供唯一的id和相同的类名

<div id="offer0" class="offer">Content</div>
<div id="offer1" class="offer">Content</div>
<div id="offer2" class="offer">Content</div>
<div id="offer3" class="offer">Content</div>
<div id="offer4" class="offer">Content</div>
<div id="offer5" class="offer">Content</div>
<div id="offer6" class="offer">Content</div>
内容
内容
内容
内容
内容
内容
内容
当您检查今天是哪一天时,将具有该类名的每个div的display设置为“none”,然后通过ID获取所需的div并将其更改回block

// gets day of the week, Sunday = 0    
var day = new Date().getDay()

// gets a collection of divs with the class name "offer"
var divs = document.getElementsByClassName('offer')
var len = divs.len

// loop through the divs we grabbed above and set their display to "none"    
for (i = 0; i < len; i++) {
    divs[i].style.display = 'none';
}

// get the element by it's ID using the day var we stored above
document.getElementById('offer' + day).style.display = 'block'
//获取一周中的哪一天,星期天=0
var day=新日期().getDay()
//获取类名为“offer”的div集合
var divs=document.getElementsByClassName('offer')
变量len=divs.len
//循环浏览我们在上面抓取的div,并将其显示设置为“无”
对于(i=0;i
下面的代码将显示基于今天的报价div。
我使用jQuery使脚本简短。
问你是否没有得到任何部分

编辑:添加了一个没有jQuery的简单解决方案

// Solution without jQuery.
// get div for all days. It gives you an array of div
var allDaysDiv = document.getElementsByClassName('weekDay');

// hide all div 
allDaysDiv[0].style.display = 'none';
allDaysDiv[1].style.display = 'none';
allDaysDiv[2].style.display = 'none';
allDaysDiv[3].style.display = 'none';
allDaysDiv[4].style.display = 'none';
allDaysDiv[5].style.display = 'none';
allDaysDiv[6].style.display = 'none';

// get numeric for today
var day = new Date().getDay();

// display today's div
document.getElementById(day).style.display = 'block';
$(文档).ready(函数(){
$(“.weekDay”).hide();//隐藏类为“weekDay”的所有div
var day=new Date().getDay();//获取今天的数值,周日到周六为0-6
$(“#”+天).show();
});

星期日报价
周一报价
星期二报价
星期三报价
周四报价
星期五报价
周六报价

默认情况下,您可以将所有元素设置为隐藏,然后根据日期将需要的元素设置为可见。将它们设置为隐藏在html div标记中。非常感谢,这一个对我很有用,因为它的jQuery不太理解语法,但我只是复制了你所做的:)还有一个问题,这可以用if和else来完成吗?当然可以,你可以使用if-else块。我添加了一个没有jQuery的简单示例。但我的建议是,一旦您对JavaScript有信心,就开始学习jQuery。这是非常容易学习和惊人的强大。你可以用更少的代码做很多事情。你能给我指一个youtube chanell或者一些学习jQuery的在线教程(chanell或者你认为不错的教程)吗