Javascript 如何在完整日历中选择全年的工作日或周末?
如何在一年的完整日历中选择星期日或周末 我从堆栈溢出中尝试了一些答案Javascript 如何在完整日历中选择全年的工作日或周末?,javascript,fullcalendar,Javascript,Fullcalendar,如何在一年的完整日历中选择星期日或周末 我从堆栈溢出中尝试了一些答案 $('.fc-day.fc-mon').css('backgroundColor', 'teal'); $('.fc-day.fc-sat').css('backgroundColor', 'teal'); 这适用于我,选择了本月的周一/周六,但当我单击下一个/上一个按钮或更改月份时,我的选择就消失了。 我还需要选择一整年。? 怎么做? TIA当代码执行时,页面中存在向元素添加样式的代码,但在更改月份后,它将重新创建新元
$('.fc-day.fc-mon').css('backgroundColor', 'teal');
$('.fc-day.fc-sat').css('backgroundColor', 'teal');
这适用于我,选择了本月的周一/周六,但当我单击下一个/上一个按钮或更改月份时,我的选择就消失了。
我还需要选择一整年。?
怎么做?
TIA当代码执行时,页面中存在向元素添加样式的代码,但在更改月份后,它将重新创建新元素并销毁所有现有元素,因此您的更新不会反映在新创建的元素中
.fc-day.fc-mon,.fc-day.fc-sat{
background-color: teal;
}
您有两个选项,如果您希望它始终存在,那么您可以在CSS中为这些元素添加简单样式
.fc-day.fc-mon,.fc-day.fc-sat{
background-color: teal;
}
或者,当呈现新的日历视图时,您必须始终执行此操作,您可以在回调中执行此操作
viewRender: function (view, element) {
$('.fc-day.fc-mon').css('backgroundColor', 'teal');
$('.fc-day.fc-sat').css('backgroundColor', 'teal');
}
更新:您可以从view.start属性中提取年份,该属性保存时刻日期对象,并根据类设置的年份(如有必要)
例如:
viewRender: function(view, element) {
if (view.start.format('YYYY') === '2019') {
$('.fc-day.fc-mon').css('backgroundColor', 'teal');
$('.fc-day.fc-sat').css('backgroundColor', 'teal');
}
}
$document.readyfunction{
var日期=新日期;
var d=date.getDate;
var m=date.getMonth;
变量y=date.getFullYear;
控制台逻辑+-+m+-+d;
$“日历”。完整日历{
标题:{
左:“上一个,下一个今天”,
中心:'标题',
右图:“月,agendaWeek,agendaDay”
},
viewRender:functionview,元素{
if view.start.format'YYYY'='2019'{
$'.fc day.fc mon'.css'backgroundColor',teal';
$'.fc day.fc sat'.css'backgroundColor',teal';
}
}
};
};
在CSS.fc day.fc mon{background color:teal}中添加样式,或者在更改我尝试加载一整年的monthNo时始终添加样式。此外,只有在选择day之后才会进行此选择。。因此,我在每天的选择下单独编写这段代码。选择后,“仅我的选择”必须仅显示所选年份。。有什么办法吗?关于Css的事情,我在你的第一条评论中给出了答案。然后我尝试了你的渲染视图。。但它对我不起作用。它问我函数名,所以我给了一些名字,仍然不起作用。我是新来的小提琴手。。我在那里写了我的代码,但不知怎么的,日历并没有出现。。这是我的工作code@Riya您的日历在JSFIDLE中不起作用,因为您没有包含任何创建或呈现日历的代码。您包含的内容似乎是工作代码的子集。您也没有包含完整的日历CSS。另外,您以前的fullCalendar问题都是基于fullCalendar v3的,但是在这个JSFIDLE中您添加了一些v4库。请密切关注您所做工作的细节!如果您想要一个工作的JSFIDLE v3,您可以在中使用我的JSFIDLE,并根据您的需要对其进行修改situation@Riya实际上,为了节省您的时间,因为它很琐碎,下面是修改后的版本:。正如您所看到的,使用viewRender的想法似乎很好。你到底发现了什么问题?也许您想查看视图,看看其中的一部分是否在您想要的年份内?如果是这样,您可以通过检查view.start和view来轻松检查它。end@Riya让我查一下