114

我已经在一个项目中设计并实现了 jQuery UI 滑块。虽然它是响应式的,但滑块不会响应被触摸和拖动。相反,您必须触摸您希望滑块移动到的位置。我想避免切换到支持触摸和拖动的 jQuery 移动 UI,因为我们已经广泛使用 jQuery(非移动)UI。

我们想要的功能: 这里
我们正在使用的功能:这里

在台式机上,您无法区分。在移动设备上是显而易见的。

任何人都知道如何将此支持添加到 jquery UI?

$("#videographers").slider({
  value: 2,
  min: 1,
  max: 3,
  step: 1,
  slide: function(event, ui) {
    return calcTotal(ui.value);
  }
});
4

3 回答 3

296

jQuery ui 没有触控支持。您应该将它与jQuery-ui touch punch一起使用。

只需在 jQuery ui 之后添加脚本:

<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script src="http://code.jquery.com/ui/1.8.21/jquery-ui.min.js"></script>
<script src="jquery.ui.touch-punch.min.js"></script>

你也可以使用cdnjs:

<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jqueryui-touch-punch/0.2.3/jquery.ui.touch-punch.min.js"></script>

注意:最好在 Github 上给这个 repo一个 star。

于 2012-12-10T20:34:29.360 回答
5

你可以只链接这个js。

<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jqueryui-touch-punch/0.2.3/jquery.ui.touch-punch.min.js"></script>

谢谢。

于 2017-08-14T14:01:04.327 回答
1

如果您在Wordpress中,您可以在 functions.php 中使用此代码:

add_action( 'wp_head', function () {

    // jquery.ui.touch-punch
    wp_enqueue_script( 'jquery.ui.touch-punch', '//cdnjs.cloudflare.com/ajax/libs/jqueryui-touch-punch/0.2.3/jquery.ui.touch-punch.min.js', [], '0.2.3',false );

}, 999 );
于 2021-07-11T04:42:40.140 回答