Javascript 内部滚动,通过拖放单击

Javascript 内部滚动,通过拖放单击,javascript,drag-and-drop,touch,iscroll4,Javascript,Drag And Drop,Touch,Iscroll4,我正在构建一个web应用程序,并试图使其能够触摸 我有一个需要滚动的列表(我目前正在使用iScroll) 可以单击列表中的项目 列表中的项目可以拖动(我希望如此) 我使用下面的代码来禁用滚动时的单击 var myScrollingList = new iScroll('list_scrolling', { onScrollMove: function () { $('a').bind('click', function (e) { e.preven

我正在构建一个web应用程序,并试图使其能够触摸

我有一个需要滚动的列表(我目前正在使用iScroll)

可以单击列表中的项目

列表中的项目可以拖动(我希望如此)

我使用下面的代码来禁用滚动时的单击

var myScrollingList = new iScroll('list_scrolling',
    {
        onScrollMove: function () {
            $('a').bind('click', function (e) { e.preventDefault(); });
        },
        onScrollEnd: function () {
            $('a').unbind('click');
        }
    });
我使用以下代码(jQuery longclick)来区分单击和长单击之间的区别,以便长单击触发拖动

$('a.item').click(500, function (ev) {
    console.log('long-click');
    ev.target.draggable({
        helper: function () {
            return jQuery(this).clone().appendTo('body').css('zIndex', 500);
        }
    });
    return false;
});

$('a.item').click(function () {
    console.log('short click');
    return false;
});
好消息是我可以滚动而不触发“长点击”

问题是双重的

1) 在滚动结束时触发常规单击,但不是“短单击”,因此触发的是常规非javascript单击事件


2) 我的ev.target.draggable无法使目标拖动。有没有办法将目标创建为可拖动的元素?或者我最好只是克隆elment,然后以某种方式将克隆设置为可拖动的?或任何其他建议。

更好的搜索@你是说一个更好的标签?我目前正在使用iScroll,但这可能不是答案,这就是为什么我没有这样标记它。