jquerydroppable:触发&x27;悬停';财产?

jquerydroppable:触发&x27;悬停';财产?,jquery,touch,mouseevent,droppable,jquery-ui-droppable,Jquery,Touch,Mouseevent,Droppable,Jquery Ui Droppable,设置jQuery可拖放时,您可以根据悬停在其上的可拖动鼠标分配类(或函数),如下所示: $(".myDroppable") .droppable({ hoverClass : 'droppableStyle' }) 默认情况下,jQuery非常简单,可以拖动 然而,我正在开发一种依赖于触摸的解决方案,因此,我选择不在拖动部分使用jQuery DragTables。不过,我还是想用可放下的 问题:可拖放的“侦听”用于确定项目是否被拖过它?有没有什么方法可以从我自制

设置jQuery可拖放时,您可以根据悬停在其上的可拖动鼠标分配类(或函数),如下所示:

$(".myDroppable")
    .droppable({
        hoverClass : 'droppableStyle'
    })
默认情况下,jQuery非常简单,可以拖动

然而,我正在开发一种依赖于触摸的解决方案,因此,我选择不在拖动部分使用jQuery DragTables。不过,我还是想用可放下的


问题:可拖放的“侦听”用于确定项目是否被拖过它?有没有什么方法可以从我自制的可拖动鼠标中触发一些鼠标事件,因为它被拖动时会发出可拖放鼠标悬停类的信号?

我相信
上的
下的
事件会触发这个选项,尽管我还没有使用没有可拖动鼠标的可拖放鼠标来测试这个选项。您可以使用
accept
选项选择自制的拖拽设备,拖拽设备应相应处理

$(".myDroppable")
    .droppable({
        hoverClass: "droppableStyle",
        accept: ".homeMadeDraggable"
});
不看你的代码,虽然很难说到底会发生什么。看看源代码,结合阅读,它应该澄清表面下发生了什么,以及它是否适用于您的情况

        _over: function(event) {

            var draggable = $.ui.ddmanager.current;
            if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element

            if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) {
                    if(this.options.hoverClass) this.element.addClass(this.options.hoverClass);
                    this._trigger('over', event, this.ui(draggable));
            }

    },

    _out: function(event) {

            var draggable = $.ui.ddmanager.current;
            if (!draggable || (draggable.currentItem || draggable.element)[0] == this.element[0]) return; // Bail if draggable and droppable are same element

            if (this.options.accept.call(this.element[0],(draggable.currentItem || draggable.element))) {
                    if(this.options.hoverClass) this.element.removeClass(this.options.hoverClass);
                    this._trigger('out', event, this.ui(draggable));
            }

    },

谢谢这在这个问题上确实有效,所以这是一个很好的信息。关键是“接受”选项。唉,我的问题是通过触摸启用双拖拽功能——我已经用我的DIY拖拽功能实现了这一点,但是,唉,拖拽功能看起来是相同的方式……没有设置为处理并发的拖拽。哦,好吧。你应该能处理两个拖拉。
accept
选项可以通过函数回调来处理此-。要明确的是,当你说“通过触摸进行双拖拽”时,你是指两个手指同时拖拽两个项目吗?是的,这就是目标…同时拥有两个单独的拖拽。唉,jQueryUI对鼠标事件的依赖似乎是罪魁祸首。Touch punch虽然很棒,但仍然将触摸转换为鼠标事件,它可能是jQuery,或者更可能是浏览器本身,只识别一个鼠标光标(这很有意义)。我确实找到了一个使用“draggableTouch.js”的拖动部分的解决方法。所以现在看来我需要运用我自己的可放下逻辑来适应。