javascript – jsTree拖放android / ipad平板电脑
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – jsTree拖放android / ipad平板电脑,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1518字,纯文字阅读大概需要3分钟。
内容图文
![javascript – jsTree拖放android / ipad平板电脑](/upload/InfoBanner/zyjiaocheng/776/9db515e5f2fb4ae68b266e6faffeac46.jpg)
我正在使用jsTree在几个树视图之间拖放项目.这适用于PC,但不适用于平板电脑(Apple和Android).我知道JQueryUI没有内置的DnD支持平板电脑,我已经尝试了几个可用的调整,但没有一个工作.
是否有可能在平板电脑上使用jsTree拖放?
谢谢!
解决方法:
我已经连续几天探索这个问题了,专注于获取一个使用jsTree在iPad上工作的现有Web应用程序.使用jquery.ui.touch.js我可以在那里获得大部分内容.触摸事件可以映射到jstree期望的鼠标事件,并且树将允许我拖动,但是永远不会识别放置目标,实际上从不调用drop_check函数.所以它并不完全存在.
我想这可能是因为只有一些触摸事件可以映射到像jquery.ui.touch.js这样的鼠标事件:touchstart = mousedown,touchmove = mousemove,touchend = mouseup.但是,jstree还依赖于mouseenter和mouseleave进行drop target检查,而且我没有这样的事件.已经讨论过touchenter和touchleave,但我不认为iPad上的Safari浏览器会触发这一点.我一直在考虑通过查看坐标并检查重叠来尝试从touchmove事件生成mouseenter和mouseleave事件,但我还没有尝试过.
更新:2012年5月18日.我认为它现在正在运作.有几件事与我想的不同.最大的突破是当我意识到触摸事件目标元素永远不会从触摸启动,通过所有触摸移动到触摸.但是,mousemove事件期望获取事件的元素是您要移动的元素.所以我更改了插件,将mousemove事件发送到touchmove事件坐标处的元素,它就像一个冠军.事实证明,一旦我这样做,我就不再需要手动触发mouseenter和mouseleave事件,因为jQuery会处理这些事件.
右键单击上下文菜单(在触摸屏上)在我的简单测试器应用程序中工作,但在我的Web应用程序中没有,直到我在上下文菜单事件后在右键上添加模拟鼠标事件.
我的jquery.ui.touch.js的修改版本已在此处上传:
http://code.google.com/p/jquery-ui-for-ipad-and-iphone/issues/detail?id=18
内容总结
以上是互联网集市为您收集整理的javascript – jsTree拖放android / ipad平板电脑全部内容,希望文章能够帮你解决javascript – jsTree拖放android / ipad平板电脑所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。