我正在使用jQuery UI开发一个网站,当在触摸屏设备上查看时,我的网站上有几个元素似乎是不兼容的;它们不会导致任何错误,但行为并不像它应该的那样。
有问题的元素是jQuery UI定义的滑块和范围滑块;在触摸屏上,它只是将整个网页滑动到屏幕的一侧,而不是将触摸注册为拿起一个手柄,将拖动手柄注册为在滑块上拖动手柄。如果你点击手柄,然后点击滑块上你希望手柄结束的位置,它确实可以工作,但这非常慢,而且不理想。有什么想法吗?
我尝试下载jqtouch插件,然后将.touch([...])
附加到所有对slider()和rangeslider()的调用中,但都不起作用。
谢谢!
更新:我在jQuery UI网站上找到了这个“补丁”
http://bugs.jqueryui.com/ticket/4143
这意味着它促进了iPhone上的slider,但现在来看另一个愚蠢的问题:我如何将这个“补丁”合并到我的代码中?我是不是像插件一样把它放在代码的开头?
发布于 2012-03-02 21:11:16
这个库似乎提供了你正在寻找的东西:
https://github.com/furf/jquery-ui-touch-punch#readme
它也有一些使用代码的示例(只需添加插件):
<script src="http://code.jquery.com/jquery.min.js"></script>
<script src="http://code.jquery.com/ui/1.8.17/jquery-ui.min.js"></script>
<script src="jquery.ui.touch-punch.min.js"></script>
<script>
$('#widget').draggable();
</script>
发布于 2014-02-26 15:59:06
只是想添加一些关于这个的新信息。Touch- Ipads在Ipads和Android设备上运行良好。但这个滑块不能在Windows移动设备上工作,就我所能测试的(使用最新版本的jquery ui & Touch work )
修复非常简单,只需将以下CSS规则添加到.ui-slider handle:
-ms-touch-action: none;
touch-action: none;
希望这能有所帮助
https://stackoverflow.com/questions/6360249
复制相似问题