我有一些基本的自定义标签设置功能,使用显示/隐藏DIV的点击事件。
尽管使用render
函数(docs),FullCalendar仍未显示其中一个标签。
$(".tabs .tab").click (e) ->
...
$("#calendar").fullCalendar "render"
#calendar
DIV最初是隐藏的,但根据我的理解,render
函数应该强制每次点击都会呈现日历。所有其他选项卡都能正常工作,因此我知道显示/隐藏功能根本不存在问题。
有谁知道这里可能出现的问题?
答案 0 :(得分:1)
问题最终与我展示/隐藏DIV的方式有关 -
我用来隐藏DIV的CSS选择器过于宽泛,最终将display: none;
分配给日历DIV(这是标签内容DIV的子项)。
解决方案是改变:
$("#tab-contents div").hide()
要:
$("#tab-contents").children().hide
在HTML中,日历显示如下(在HAML中):
#tab-contents
#tab-calendar
#calendar
#tab-other
...
感谢您的帮助和建议,我应该在开始时发布更多代码。
答案 1 :(得分:0)
某些脚本通常无法在隐藏的DIV上正常工作。
我通常会在页面上加载一切可见的内容,大约200ms后我隐藏了所有需要隐藏的内容。
对于bootstrap标签,我设置了每个标签容器" active" class和tab菜单,我使用这个触发器脚本。
setTimeout(function() {
$('.my-tabs-control a').first().click();
}, 200);
您可以为自己的脚本尝试此解决方案。