在Surface Pro平板电脑上启用jQuery UI拖放

Enable jQuery UI drag and drop on Surface Pro tablet

本文关键字:jQuery UI 拖放 启用 Surface Pro 平板电脑      更新时间:2023-09-26

正如标题所说,我正在尝试在Sufrace Pro 3平板电脑上启用拖放功能。

这些设备是否支持拖放功能?如果是,我将如何启用此功能?如果没有,我该如何解决此问题?

我正在尝试让jQueryUI的拖放功能发挥作用。下面是一个我正在努力工作的基本示例:

$( "#draggable" ).draggable();
#draggable {
    width: 200px;
    height: 200px;
    border: 1px solid;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script type="text/javascript" src="http://code.jquery.com/ui/1.9.2/jquery-ui.js"></script>
<div id="draggable">
  <p>Drag me around</p>
</div>

我之前也遇到过类似的问题。您需要将所需元素的touch-action属性更改为none。在这种情况下,由于您使用的是jQueryUI,因此您将把它应用于.ui-draggable/.ui-droppable元素。

您还需要添加-ms供应商前缀,因此您将使用-ms-touch-action: none:

.ui-draggable, .ui-droppable {
    -ms-touch-action: none;
    touch-action: none;
}

有一个适用于Windows 10的更新版本。https://github.com/RWAP/jquery-ui-touch-punch/blob/master/jquery.ui.touch-punch.js

尝试使用Touch Punch,它可以在触摸设备上使用jQuery UI。

您只需要在jQuery ui后面插入它,如:

<script src="path/to/file/jquery.js"></script>
<script src="path/to/file/jquery-ui.js"></script>
<script src="path/to/file/jquery-touch-punch.js"></script>

无需代码