jQuery FullCalendar:在议程视图中禁用滚动?

Posted

技术标签:

【中文标题】jQuery FullCalendar:在议程视图中禁用滚动?【英文标题】:jQuery FullCalendar: Disable scrolling in Agenda View? 【发布时间】:2012-05-01 16:05:36 【问题描述】:

如何使用 FullCalendar jQuery 插件禁用议程视图(周、日模式)中的滚动?在月模式下一切都很好,但是当我更改为周/日模式时,我的主页滚动条旁边会出现一个滚动条。

【问题讨论】:

在查看文档时,我看不到任何方法可以在某个视图中禁用滚动。也许提供你的代码示例,看看是否有办法在你的 html/CSS 中防止这种情况发生。 我只是看到,当我使用 basicWeek 和 basicDay 而不是议程周和议程日时,没有滚动条,所以我猜滚动条是议程周和议程日视图的“功能”。 你不能在不破解 js 文件的情况下恢复它。日历的高度设置为与宽度成正比,宽度根据可用的 div 宽度量设置。比例设置高度并使其他所有内容在周边内隐藏和可滚动。我不确定它在 js 中的设置位置,但那是必须更改的位置。希望我能提供更多帮助! 【参考方案1】:

这就是我在我的案例中所做的。 目标是动态改变高度,所以我就是这样使用 viewDisplay 事件的:

$('#calendar').fullCalendar(
    viewDisplay: function (view) 
        var h;
        if (view.name == "month") 
            h = NaN;
        
        else 
            h = 2500;  // high enough to avoid scrollbars
        

        $('#calendar').fullCalendar('option', 'contentHeight', h);
    
);

【讨论】:

viewDisplay 已被弃用 请任何人提出动态高度的解决方案。我有一个初始化议程视图的动态数据,因此我无法在我的视图中设置一些特定的高度,例如 2500。在某些情况下,内容不合适,而在其他情况下,我认为可能会有很多额外的空间。 在 FullCalendar v2.1.1 中也将高度设置为“自动”对我不起作用【参考方案2】:

从 FullCalendar 2.1.0-beta1 开始,您可以设置 height: 'auto' 选项来禁用视图中的滚动条。

虽然这个新功能的变更日志条目可以读作“在月视图中关闭滚动条”,但它实际上适用于所有视图。

在月视图中,当日历的高度因事件过多而溢出时,会出现垂直滚动条。要关闭此行为,请将高度选项设置为“自动”。 -- from v2.1.0-beta1 changelog

【讨论】:

如果我在 FullCalendar 3.5.1 中将高度设置为自动,月视图是完美的,但议程高度被切断并出现垂直滚动条。【参考方案3】:

只需使用:

$('#calendar').fullCalendar(
    height: "auto"
);

【讨论】:

已包含在上述答案中 (***.com/a/25440372/219324)。【参考方案4】:

当然

$('#calendar').fullCalendar(
    height: 999999999
);

如果您的日历有滚动条,但您不希望它出现,那么您有 3 个选项:

    让它足够大,不会有滚动条 缩小内容,使其适合您的条件 移除滚动条并无法访问未显示的信息

你需要比“我不喜欢滚动条”更具体

【讨论】:

谢谢,height 属性确实移除了议程日和议程周中的滚动条,但现在月份视图被裁剪并且看起来很棒。【参考方案5】:

这是@Deulis 答案的更新和缩短版本:

$("#calendar").fullCalendar(
  viewRender: function(view)
    $("#calendar").fullCalendar("option", "contentHeight", (view.name === "month")? NaN : 9999);
  
);

正如@Pierre de LESPINAY 和@Jens-André Koch 已经提到的,viewDisplay 在 fullcalendar v2.0 中已被弃用。我们必须改用viewRender。

【讨论】:

短一点:viewRender: function(view) $('#calendar').fullCalendar('option', 'contentHeight', (view.name === 'month') ? NaN : 99999); :-)

以上是关于jQuery FullCalendar:在议程视图中禁用滚动?的主要内容,如果未能解决你的问题,请参考以下文章

jQuery fullcalendar 自定义事件

Fullcalendar jquery插件中的年视图

如何在我的完整日历议程中显示今天的日期

将资源视图/甘特图添加到 jQuery Fullcalendar

FullCalendar Jquery,选择内天

如何在议程日视图中正确呈现完整日历