jQuery FullCalendar在触摸设备上工作 – 但是事件的小问题

http://page-test.co.uk/cal/ – FullCalendar演示

我已经设置了这个基本的jQuery FullCalendar设置,其中包含相关附加内容支持触摸设备.

链接页面中包含的文件都是默认文件.

该演示适用于非触摸设备,但触摸设备很难.

在拖动一个项目时,主要在iPhone / iPad上进行测试(其他触摸设备或多或少完全相同),另一个不能.所以你可以拖动任何项目,但其他项目都是锁定的.

一些关键点:

>更改视图(月/周等)然后允许再次拖动所有内容
>如果您先点击/触摸另一个元素,然后可以拖动它,而不是其他元素,直到您先触摸它们.
>在BlackBerry Playbook上,它实际上的行为略有不同.如果你去拖动一个不同的元素(通常什么也没发生),那么在PlayBook上似乎什么也不做(当你在屏幕上滑动手指时) – 但是当你放手时(还没有发生任何事情) go选择draggable元素,然后取消选择它.如果你然后去拖动该元素它工作正常.
>更改设备的方向会立即锁定页面上的所有元素,并且必须先执行将视图更改为月/周或触摸元素,然后才能再次拖动任何内容.

我打赌这是一个单行修复,但我花了几个小时,只是不能让它做任何事情.

我只是想在iPad / iPhone上工作.

它似乎要么是mouseup / touchend没有触发某些东西,要么是在第一次拖动后删除了touchstart事件,但我无法解决问题.

解决方法

编辑:

我使用Touch Punch和dayRender来允许在触摸设备上选择一天或多天.我刚刚添加了源代码并将Touch Punch中的addTouch()函数添加到日期单元格的渲染中:

dayRender: function( date,cell) {

cell.addTouch();

},

这至少可以让您在触摸设备上选择一天或几天,您可以在其他地方使用其他触控功能来做更多功能,但我还没有尝试过.

我遇到了与iPad相同的问题.我用我的fullcalendar应用程序尝试了https://github.com/jboesch/jQuery-fullCalendar-iPad-drag-drop,可以拖动一个事件,但不能拖动另一个事件,它滚动.我禁用滚动,但仍然得到相同的行为.我还尝试了这个项目https://github.com/joshgerdes/jquery.ui.touch中提到的最后一个选项https://code.google.com/p/fullcalendar/issues/detail?id=724&q=ipad&colspec=ID%20Type%20Status%20Milestone%20Summary%20Stars

我还希望选择几天或几小时来创建活动.我在iPad上查看了谷歌的日历,它也缺少这个功能,如果它不能在您的浏览器上运行(iPad上的Safari),它们会通知您使用移动版本.移动版本不会在月视图中显示任何事件,因此这不适用于我的应用程序.具有可选择性和拖拽功能的全功能全日历将是理想选择,但触摸设备可能不会很好地支持这一点.我也会继续寻找解决方案,但如果谷歌不提供这项功能,可能并不容易实现,我们可能需要提供移动版本和/或没有可选择性的生活和拖放触摸屏.我也非常感谢其他人的帮助.

相关文章

jQuery插件的种类 1、封装对象方法 这种插件是将对象方法封装起来,用于对通过选择器获取的jQuery对象进...
扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间。 入门 编写一个jQuery插件开始于给...
最近项目中需要实现3D图片层叠旋转木马切换的效果,于是用到了jquery.roundabout.js。 兼容性如图: ht...
一、什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异...
AMD 模块 AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一...