我有一个使用 ionic 框架构建的 iPad 应用程序,并在后端提供休息服务。
我有一个屏幕,其中有一个完整的日历组件和一个可滚动的 左侧面板中的可拖放项目列表。
屏幕加载后,我可以将项目从左侧面板拖放到 日历并可以生成事件。
但是一旦我滚动侧面板列表或在侧栏上进行任何触摸事件 DRAG 功能有效,但 DROP on calendar 第一次不起作用。
然后该功能在连续尝试中再次正常工作。
因此,在侧边栏中每次滚动后,日历上的项目存储第一次不起作用。
应用程序在浏览器中测试时没有产生此类问题。
组件和环境:
- 对于触摸:jQuery 触摸打洞器
- 日历:jQuery 完整日历
- 框架:ionic + angular
- 平台:ios (iPad)
最佳答案
好吧,我找到了解决问题的方法。我在 v 2.7.3 中对 fullcalendar.js 做了一些更改 在 8790 行附近的函数“processUnselect”中添加了以下两行
this.dayGrid.isDraggingExternal = false;
this.timeGrid.isDraggingExternal = false;
所以我的函数如下所示
processUnselect:函数(ev){
this.dayGrid.isDraggingExternal = false;
this.timeGrid.isDraggingExternal = false;
this.processRangeUnselect(ev);
this.processEventUnselect(ev);
},
这样做的原因是,每当我滚动日历以外的网格时,它都会将该事件标识为拖动事件。由于“this.dayGrid.isDraggingExternal”的此值设置为 true 并且永远不会变为 false,因为滚动后日历未收到任何放置事件。
关于ios - 使用 ionic 框架在 iPad 中拖放问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39656314/