FullCalendar dayClick not triggering



当dayClick函数没有在页面上触发某些单元格的滚动时,我遇到了问题,而对其他单元格来说这很好。基本上,在没有滚动的页面上是可以的,但在有页面的较长内容上会引起问题。

我发现有两个函数可以定义网格中的单元格位置(fullcalendar 2.5.0版本):

"getHorizontalIndex"one_answers"getVerticalIndex"

函数"getVerticalIndex"返回"undefined",因为鼠标"topOffset"位置超出了"boundingRect"维度,所以在深入挖掘后,我找到了负责查找顶部父元素的函数"getScrollParent"(第297行)。

function getScrollParent(el) {
    var position = el.css('position');
    var scrollParent = el.parents().filter(function() {
        var parent = $(this);
        return (/(auto|scroll)/).test(
            parent.css('overflow') + parent.css('overflow-y') + parent.css('overflow-x')
        );
    }).eq(0);
    return position === 'fixed' || !scrollParent.length ? $(el[0].ownerDocument || document) : scrollParent;
}

因为在我的css中没有css为'overflow:scroll'或'overflow:auto'的元素,所以我的父元素是'html',它的高度被检测为没有滚动的高度。解决方案很简单-指定"overflow:auto;"在css中用于日历元素。例如,如果您有以下代码:

<div id="mycalendar"></div>
(function(){
    $("#mycalendar").fullCalendar({});
})();

添加样式'overflow:auto;'对于"mycalendar"分区。

当前的修复方法是从HTML元素中删除overflow-x: hidden。这是一个已知的问题:https://github.com/fullcalendar/fullcalendar/issues/3615

相关内容

  • 没有找到相关文章

最新更新