gpt4 book ai didi

javascript - 在全日历选择回调中停止传播

转载 作者:行者123 更新时间:2023-11-28 07:07:04 33 4
gpt4 key购买 nike

我正在使用 Fullcalendar (docs) 开发日历

当选择一个空的时间段时,我想显示一个上下文菜单,如下所示: (不要介意样式)

select: function(start, end, jsEvent){    
$("#calendarContextMenu").css({
display: "block",
left: jsEvent.pageX + 4,
top: jsEvent.pageY - 16
});
}

并在单击其他任何内容时隐藏它:

$(document).click(function(){
$("#calendarContextMenu").hide();
});

jsFiddle

这很好用,但是当选择全天时段时,上下文菜单不会显示。我注意到发生这种情况是因为 $(document).click() 在 fullcalendar 的选择回调之后被直接触发。我能做些什么来修复它?似乎正在发生某种事件冒泡。当然,始终欢迎替代解决方案。

注意:我认为有一个 div .fc-content-skeleton 导致了问题。

最佳答案

我更新了您的代码并添加了 eventClick 监听器。请在这里查看:http://jsfiddle.net/e6v3mkjo/4/

更新 1:

eventClick 更改为 dayClick

http://jsfiddle.net/e6v3mkjo/5/

请同时查看他们的文档:http://fullcalendar.io/docs/

更新 2:

哈哈,我发现我没看懂问题。真正问题的解决方案很简单:删除文档点击处理程序,然后添加 unselect 处理程序。

unselect: function() {
$("#calendarContextMenu").hide();
}

关于javascript - 在全日历选择回调中停止传播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32881126/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com