9

我正在使用beforeShowDay并已将课程分配specialDay到我日历中的特定日期;这很好用,但是我无法理解如何设置课程的样式以及主题滚轮的 css 是如何工作的。我努力了:

td .specialDate {
    background: #33CC66;
}

但这对日历的外观没有影响。有任何想法吗?

4

7 回答 7

15

我有同样的问题,幸运的是我找到了答案。当您禁用一天(设置为“false”)时,分配一个类(“.specialDate”)来更改背景颜色是有效的,但如果启用了日期,则不是,因为我们有另一个样式锚(“a”)覆盖分配给“td”锚的类。

因此,如果您的日期可以选择并想要更改样式,则必须编辑继承的“a”锚,如下所示:

.specialDate a { background: #33CC66 !important; }

添加“ !important ”(如果您可以原谅重复)指示以覆盖其他设置非常重要。

希望这可以帮助!

于 2009-12-03T12:30:01.113 回答
5

像这样创建你的 CSS 样式:

<style type="text/css">
    td.specialDay, table.ui-datepicker-calendar tbody td.specialDay a { 
    background: none !important;
    background-color: #fffac2 !important; 
    color: #006633;
    }
</style>

然后使用 beforeShowDay 选项将您的样式添加到日历中。

$('#datepicker').datepicker('option', 'beforeShowDay', highlightDays);


// ------------------------------------------------------------------
// highlightDays
// ------------------------------------------------------------------
function highlightDays(date) {
    for (var i = 0; i < dates.length; i++) {
        if (SOME CONDITION TO DETERMIN SPECIAL DAY) {
            return [true, 'specialDay'];
        }
    }
    return [true, ''];
}
于 2011-05-10T21:44:19.513 回答
1
.specialDate span {background-color:#ff0000!important;}

如果你想禁用透明效果

.specialDate {filter:Alpha(Opacity=100)!important; opacity: 1!important}
于 2010-09-02T00:07:08.743 回答
1

如果 ui 日历有主题,则必须禁用background-imagespecialDate 属性:

.specialDate a { 
    background-image: none !important;
    background: #33CC66 !important;
}
于 2012-10-22T18:08:02.783 回答
0

每当我使用 JQuery UI 的东西时,我都会使用Firebug来检查应用于特定元素的任何样式,这将使您能够轻松识别需要使用哪些 CSS 元素。

于 2009-08-24T20:12:42.440 回答
0

这里有一些会突出显示当前日期或相关文本框中的日期。

样式:

.dateHighlight a { background: #58585a !important; }

剧本:

var pickerDate;
$("#pickerId").datepicker({
    // get the date to be highlighted; use today if no date
    beforeShow: function() {
        pickerDate = $("#pickerId").datepicker("getDate");
        if (pickerDate == null) pickerDate = new Date((new Date()).setHours(0, 0, 0, 0));
    },
    // add css class to the date
    beforeShowDay: function(date) {
        if (date.getTime() == pickerDate.getTime()) {
            return [true, 'dateHighlight', '']
        }
        return [true]
    }
});
于 2012-09-26T21:59:05.920 回答
0

使用点击你可以做你需要的所有CSS:

var checkin = $('.dpd1').datepicker()
.on('click', function (ev) {
        $('.datepicker').css("z-index", "999999999");
}).data('datepicker');
于 2015-05-18T09:21:32.367 回答