“链接”到可拖动呼叫以启用触摸功能

| 我对jquery ui还是很陌生,但是由于我的项目性质,我已经陷入了困境!基本上,我需要帮助的是我有一个将某些自定义项应用于jQuery ui可拖动窗口小部件的文件,并且我想进一步自定义以启用触摸功能,以便该窗口小部件在移动触摸屏设备上起作用。也就是说,我的代码如下所示:
/*
 * jQuery UI Draggable
 *
 * Depends:
  *  jquery.ui.core.js
  *  jquery.ui.mouse.js
  *  jquery.ui.widget.js
  */

 (function( $, undefined ) {

 $.widget(\"ui.draggable\", $.ui.mouse, {
     widgetEventPrefix: \"drag\",
     options: {
         addClasses: true,
         appendTo: \"parent\",
         axis: false,
         connectToSortable: false,
         containment: false,
         cursor: \"auto\",
         cursorAt: false,
         grid: false,
         handle: false,
         helper: \"original\",
         iframeFix: false,
         opacity: false,
         refreshPositions: false,
         revert: false,
         revertDuration: 500,
         scope: \"default\",
         scroll: true,
         scrollSensitivity: 20,
         scrollSpeed: 20,
         snap: false,
         snapMode: \"both\",
         snapTolerance: 20,
         stack: false,
         zIndex: false
     },
     _create: function() {

         if (this.options.helper == \'original\' &&      !(/^(?:r|a|f)/).test(this.element.css(\"position\")))
             this.element[0].style.position = \'relative\';

         (this.options.addClasses && this.element.addClass(\"ui-draggable\"));
         (this.options.disabled && this.element.addClass(\"ui-draggable-disabled\"));

         this._mouseInit();

     },

     destroy: function() {
         if(!this.element.data(\'draggable\')) return;
         this.element
             .removeData(\"draggable\")
             .unbind(\".draggable\")
             .removeClass(\"ui-draggable\"
                 + \" ui-draggable-dragging\"
                 + \" ui-draggable-disabled\");
         this._mouseDestroy();

         return this;
     },
...等等。 我看过这篇文章:如何使jQuery UI'draggable()'div可拖动以用于触摸屏?它看起来像是我要执行的操作的理想解决方案,但我不确定“将其链接到我的jQuery UI draggable()调用\”上的含义是什么。在我的代码中应该在哪里阻止:
.touch({
    animate: false,
    sticky: false,
    dragx: true,
    dragy: true,
    rotate: false,
    resort: true,
    scale: false
});
走?对不起,这可能是一个愚蠢的问题。我是初学者! :) 谢谢!!     
已邀请:
        好吧,链接是这样的,假设您有以下代码:
$(\'#someDiv\').show();
$(\'#someDiv\').addClass(\'someClass\');
$(\'#someDiv\').removeClass(\'someOtherClass\');
相反,您可以像这样链接这些调用:
$(\'#someDiv\').show().addClass(\'someClass\').removeClass(\'someOtherClass\');
这是可行的,因为jQuery函数随后会返回该元素,因此您可以对同一元素或结果元素进行“链式”函数调用。 在您的情况下,我认为应该在$ .widget调用结束后将其链接:
$.widget(...).touch({
    animate: false,
    sticky: false,
    dragx: true,
    dragy: true,
    rotate: false,
    resort: true,
    scale: false
});
或者可以通过其他方式完成:
$(\'#yourElement\').draggable(...).touch(...);
    

要回复问题请先登录注册