从活动中获取日期

时间:2014-10-13 20:11:17

标签: javascript jquery events position fullcalendar

我正在使用 fullcalendar v2.0.2 ,我正在为事件制作复制/粘贴系统。 我可以通过一个小菜单右键点击

来复制

当我右键点击日历时,如果是一周,我会计算每个.fc-agenda-days tr td.fc-agenda-slots tr的位置。我必须添加垂直+水平滚动,获取插槽持续时间,当前视图的开始日期...需要考虑的很多东西,我可以有一个特定的案例...

我在文档中搜索了一个帮助器,但我没有找到它......我查看了源代码但没有成功。

我的问题是:"是否有帮助者或方法来获取某个职位或事件的日期?"

编辑,我想我已经找到了办法,但它不起作用:

{
    _pasteEventMenu: function(e, scope){
        var that = this;
        var date = null;

        var view = this._call('getView');
        var hoverListener = view.getHoverListener();
        hoverListener.start(function(coordinates){
            console.log('a', coordinates);
            console.log('Right click on ', view.cellToDate(coordinates).format('MMMM Do YYYY, hh:mm:ss'));
        }, e);
        hoverListener.stop();
        console.log('HERE');
    }
}
当我点击10月13日星期一上午10:04

时,这个代码产品如下

a Object {row: 61, col: 0} Right click on december 14 2015, 12:00:00 HERE

1 个答案:

答案 0 :(得分:1)

如果有人想要,我终于找到了一个技巧:

    var that = this;
    var date = null;

    var view = this._call('getView');
    var hoverListener = view.getHoverListener();
    hoverListener.start(function(coordinates){
        console.log('a', coordinates);
        var sec = (view.getMinTime()._milliseconds / 1000) + coordinates.row * (view.getSlotDuration()._milliseconds / 1000);
        console.log('Right click on ', view.cellToDate(0, coordinates.col).add(sec, 'seconds').format('MMMM Do YYYY, HH:mm:ss'));
    }, e, 'contextmenu');
    hoverListener.stop();
    console.log('HERE');