【问题标题】:FullCalendar Custom/Override Header titleFullCalendar 自定义/覆盖标题标题
【发布时间】:2015-04-30 08:47:43
【问题描述】:

我想更改日历的标题格式。

目前,标题在 h2 标签中,我们无法通过在 titleFormat 选项中添加 html 代码来个性化它。 例如,在我的 titleFormat 的固定值上放置一个 span 标签(那里是 [])。

我想知道是否可以在不修改 fullcalendar.js 的情况下覆盖类 Header 的 updateTitle 方法。或者另一种可能性。

我有 2 个视图:标题格式为“[Semaine] W”的一周和标题格式为“dddd D MMMM YYYY”的自定义一天。

我的 FullCalendar 版本是 v2.3.0。

【问题讨论】:

  • titleFormat 应该可以正常工作,不是吗?如果你想改变它的样子,请使用 css。
  • 最后,我使用自己的标题。我想在几行上有标题。 (Semaine W)例如,但正如他(它)放入 H2 一样,不可能通过 css。

标签: javascript fullcalendar


【解决方案1】:

好的,这并不真正受支持,但这里有一个解决方法。 JSFiddle

viewRender: function (view, element) {
    //The title isn't rendered until after this callback, so we need to use a timeout.
    if(view.type === "agendaWeek"){
        window.setTimeout(function(){
            $("#calendar").find('.fc-toolbar > div > h2').empty().append(
                "<div>"+view.start.format('MMM Do [to]')+"</div>"+
                "<div>"+view.end.format('MMM Do')+"</div>"
            );
        },0);
    }else if(view.type === "agendaDay"){
        window.setTimeout(function(){
            $("#calendar").find('.fc-toolbar > div > h2').empty().append(
                "<div>"+view.start.format('dddd D MMMM YYYY')+"</div>"
            );
        },0);
    }
},

我不知道它是否是世界上最稳定的东西,但在最坏的情况下,它有时可能会出现轻微的美学故障(比如发布新的 FC 版本时)。

【讨论】:

    【解决方案2】:

    一个简单的方法是在 viewRender 事件中覆盖 view.title

    ...
    ,
    header: {
      center: 'title',
    },
    viewRender: function(view, element) {
      view.title = 'Your Custom Title';
    },
    ...
    

    【讨论】:

    • 这不起作用。你试过这个并看到它真的有效吗?
    • 是的,它在 3 年前对我有用。你用的是哪个版本?以后我也可以用最新版本的 fullcalender 试试这个。
    • 我使用的是 BookThatApp Shopify 应用程序中使用的版本。看起来是 3.4.0
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-19
    • 2016-10-17
    • 1970-01-01
    • 2013-10-03
    • 1970-01-01
    • 1970-01-01
    • 2014-09-15
    相关资源
    最近更新 更多