我正在使用jQuery UI的datepicker(http://docs.jquery.com/UI/Datepicker)。
听起来应该可以通过提供beforeShowDay
函数(http://docs.jquery.com/UI/Datepicker#event-beforeShowDay)来标记某些日子。但我无法为此获得CSS。我想让背景变绿了几天。
这是我迄今为止的JavaScript:
$(function() {
$('.date').datepicker({
dateFormat: 'yy-mm-dd',
firstDay: '1',
showOtherMonths: 'true',
beforeShowDay: daysToMark
});
});
function daysToMark(date) {
if (date.getDate() < 15) {
return [true, 'markedDay', ""];
}
return [true, '', ""];
}
这就是css:
.markedDay {
background-color: green;
}
但没有任何改变。我做错了什么?
答案 0 :(得分:4)
这样做了
.markedDay a.ui-state-default {
background: green !important;
}
.markedDay a.ui-state-hover {
background: red !important;
}
如同Nick Craver所指出的那样,不得不将样式添加到元素而不是td元素。我还必须将jQuery UI生成的类名添加到a元素中,以使我的css规则比CSS cascading rules的默认值更重要。最后一招是使用background
而不是background-color
来覆盖使用的jQuery UI主题图像。
答案 1 :(得分:3)
你应该做些什么,you can test it here。但是,根据您的主题,您可能需要调整CSS,因为<a>
中的<td>
具有自己的背景,并且该类会应用于<td>
。< / p>