问题标签 [jquery-ui-touch-punch]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
818 浏览

ios - jQuery Ui Sortable 的延迟选项在 iOS 上不起作用

我正在使用 jQuery UI Touch Punch 在 iOS Safari 上启用 Sortable 功能。iOS 上的 Sortable 工作正常,但我看不到任何选项(即延迟、距离等)正常工作。所有选项都可以在浏览器中使用,只是在 iOS 上不行。我已经列出了加载的依赖项和我使用的顺序。同样,问题不在于 iOS 上的 Sortable,而在于 Sortable 选项。有什么建议么?

0 投票
2 回答
1493 浏览

javascript - jQuery UI Sortable -- 页面可滚动时,Div 不可拖动

提前感谢您查看我的问题。

我正在创建一个网站,其中有一个 div 列表,这些 div 可以使用可排序的jQuery UI在 Y 轴上进行排序。
因为我希望它在使用触摸的移动设备上运行,所以我不得不添加一些小技巧以确保 jQuery UI 可用(因为它目前不支持触摸事件。)。
该 hack 被称为 jQuery UI touch punch。
网站:jQuery UI 触摸打孔
GitHub:jQuery UI 触摸打孔

现在我的问题来了。有时列表变得如此之大,以至于网站可以滚动,当网站可滚动时,我无法正确拖动项目,因为当我尝试拖动 div 时,它只会滚动页面。我可以拖动它的唯一方法是双击该项目然后拖动它。

但这真的不是我想要的,因为它使用起来非常乏味且不自然。

现在的问题是,有没有办法在尝试从可拖动集中拖动其中一个项目时禁用滚动。我尝试添加overflow-y: hidden点击或添加touch-action : none。不幸的是,这似乎不起作用。

总结
我所拥有的:我目前可以使用 jQuery UI 和 jquery UI 触摸打孔通过触摸设备拖动和排序 Div 列表。
问题:该列表将变得如此之大,以至于该站点是可滚动的,这会禁用单击一次的拖动我需要双击才能拖动该项目。
我想要什么:即使我有滚动条,我也希望能够拖动项目(无需双击)。

我怎么能意识到这种行为/我应该从什么开始?任何提示和解决方案表示赞赏。


最后但并非最不重要的是我的FIDDLE

编辑:

我正在使用:
IE 11
jQuery 版本 1.11.1
jQuery-ui 版本 1.11.4

0 投票
1 回答
855 浏览

javascript - jQuery touch-punch 可在列表中拖动:滚动和拖动干扰(移动设备)

我正在尝试构建一个可拖动列表,但拖动事件以某种方式干扰了移动设备上的滚动事件(在 Windows 平板电脑上测试,在台式电脑上工作正常)。我可以滚动或拖动,但不能同时滚动。如果我将“-ms-touch-action”和“touch-action”设置为none,我可以滚动,如果我不设置,我可以拖动。

触摸打孔也包括在内。我认为,解决此问题的最佳方法是通过按住项目一两秒钟来触发拖动事件,但我无法让它工作。

将列表的溢出设置为在开始时可见并在停止时返回“”很重要,因为我必须将项目拖出 div 边界并且我的应用程序不允许我以任何其他方式执行此操作.

您可以在这里测试代码:http: //jsfiddle.net/LQuyr/344/

希望你们能帮助我。谢谢。

0 投票
0 回答
194 浏览

javascript - 在不同的目标上触发 Javascript 事件

我有一个元素,当一个mousedowntouchstart事件发生时,它会向自己添加一个孩子。这个孩子是resizable(jQuery ui 小部件)。我使用http://touchpunch.furf.com/为触摸设备启用 jquery-ui 小部件。

我想在创建孩子时调整它的大小,而无需抬起鼠标/触摸并再次单击。它适用于鼠标设备,但我在使用触摸设备时无法触发它。

检查片段(适用于鼠标,触摸失败)。

  1. Mousedown在蓝色元素上(创建红色元素)
  2. 按住鼠标并向右拖动(红色元素被调整大小)

我无法使它适用于触摸设备。我在 上创建元素touchstart,但不抬起手指就无法调整它的大小。

我基本上想实现与鼠标相同的触摸。问题是我不知道event 必须在调整大小手柄上触发的必须是什么样子。

我检查它是否是触摸事件并尝试更改,event.target但这不起作用。

0 投票
0 回答
607 浏览

jquery - JQuery UI Draggable + 触摸打孔 + 触摸滚动?

我正在使用 JQuery UI 和Touch Punch来做一些移动工作。我有一个垂直滚动的项目列表,我需要使其可拖动。显然,这提出了一个问题。我的想法是将拖动限制到某个向量,其他所有内容都会滚动。我不能让它工作。

对于初学者,我只是使用 JQuery 的draggable参数来严格限制拖动到 X 轴。

这完全禁用滚动。有没有办法同时拥有这两种功能?

0 投票
1 回答
12013 浏览

jquery - 忽略取消使用 cancelable=false 的 touchmove 事件的尝试,例如因为滚动正在进行且无法中断

完整错误:

我正在使用touchpunch,这可能会使问题复杂化?正如大多数针对此错误的解决方案所建议的那样,我已尝试添加cancel: false到可拖动选项。它没有帮助。

这被不断地拖着,30-80次。

这是所有与拖动相关的代码:

0 投票
1 回答
120 浏览

html - 有没有一种解决方案可以在移动设备上同时引入拖动和滚动?

有没有使用 Jquery UI 和 Jquery ui 触摸打孔在移动设备上引入拖动和滚动的解决方案?

单击以查看图像 我添加了图像,它将解释用例。

0 投票
0 回答
251 浏览

javascript - jQuery-ui 滑块在触摸手柄时会跳动,应该是静止的

我使用 jQuery-ui 插件和 jquery.ui.touch-punch 在移动设备上实现拖动滑块事件。我关闭了点击事件,我只想在拖动手柄时才起作用。一切正常,除非我先触摸手柄(不要触摸移动,只需触摸启动)它每次都会移动,我不知道为什么,希望有人可以为我详细说明。谢谢提前^ ^

0 投票
0 回答
829 浏览

jquery - 外部事件的全日历触摸屏支持

当前版本的全日历在触摸屏上效果很好,您可以在日历中拖放事件。但是外部拖动演示不起作用。

https://fullcalendar.io/js/fullcalendar-3.6.2/demos/external-dragging.html

有没有办法让它工作?我尝试添加 jQueryUI Touch Punch 库,这使它在一些移动浏览器中工作,但不是全部。

0 投票
1 回答
1275 浏览

jquery - 在移动浏览器中通过拖放播放音频

我有一个具有拖放功能的网站,旨在在计算机、平板电脑和手机上工作。它使用 jQuery、jQuery UI 和 jQuery UI Touch Punch。拖放会导致播放一个简短的音频剪辑。这个小提琴有一个例子。

不幸的是,音频在当前版本的 iOS Safari 和 Android Chrome 中无法正常工作。有没有办法解决这个问题?

此图像解释了各种浏览器版本中的行为:

图片说明:

iOS Safari:在 iOS 8.4 及以下版本中,拖放音频都可以播放。在 iOS 9.0 及更高版本中,拖放音频均不播放。

Android Chrome:在 51.0.2704.81 版本中,拖放音频都播放。在版本 52.0.2743.98 和版本 55.0.2883.91 中,拖放音频均不播放。在版本 56.0.2924.87 和 63.0.3239.111 中,不播放拖动音频,但播放音频。

这是代码,如果小提琴消失了: