【问题标题】:Intuitive Sortable and Draggable UI indicators直观的可排序和可拖动 UI 指示器
【发布时间】:2011-07-22 01:25:57
【问题描述】:

我有可以排序的元素和可以拖放到容器中并返回的元素。我应该如何向用户展示一些元素可以排序并且其中一些是可拖动的(所以我还需要显示放置区域,我可以在拖动时突出显示)?

jQuery Sortable UI 演示中,我看到了双箭头指示器,在某些站点上,有两列虚线。

请分享你的经验

【问题讨论】:

    标签: javascript html css draggable jquery-ui-sortable


    【解决方案1】:

    问题,至少在这个阶段,列表等的动态重新排序对于大多数人来说是一个相对较新的概念......似乎没有任何真正的惯例围绕这个问题,因为有用于更成熟的交互,如按钮、复选框等。

    我倾向于建议任何表示该项目可能是“可抓取”或“可分类”的东西都是一个好主意。箭头有效,iOS 上的脊状手柄(三个水平插入条)也有效 - 但两者本质上都不明显。与往常一样,现实世界的映射是这里的理想选择……但实际上,“现实世界”中的一切都是可操作的,这使得任务变得更加困难。没有什么可以真正从现实世界映射到 UI 以显示“被拖动的能力”。

    无论您决定使用什么,您可能都必须就符号的含义向您的最终用户提供一些建议(可能是工具提示或简单的一次性通知)......因为它是并不总是很明显。就个人而言,我可能会使用 JQuery 样式的箭头将列表显示为可排序的(但它仍然没有真正突出拖动交互的可能性......我是单击箭头移动它们,还是单击和拖动,还是有其他机制?)。

    【讨论】:

    • 使用鼠标指针(如手、手指等)有助于图像指示和提示。感谢您的回答
    • 确实如此 - 但“手形指针”也用于常见的基于 Web 的 UI 中的链接,因此 可能 进一步强化基于点击的用例,而不是而不是基于拖动的用例。一个理想的场景是能够实现一个“张开”的手形图标,当在可拖动的东西上...在拖动过程中变成一个“抓握”的手。
    • 我的意思是这个doc.qt.nokia.com/latest/images/cursor-openhand.png和这个同时拖动washington.edu/lst/help/documentation/powerpoint2007/images/…实际上你在说同样的事情:)
    • 很公平 - 然后看起来我们在想同样的事情:)
    【解决方案2】:

    为了标记放置区域,我总是使用可拖动的start 选项来添加类,删除类我使用stop 选项。像这样的:

    $(".draggable").draggable({
        start: function() {
            $('.droppable').addClass('droppableArea');
        },
        stop: function() {
            $('.droppable').removeClass('droppableArea');
        },
    });
    

    当拖动文件时,悬停类在 droppable 上总是不错的:

    $('.droppable').droppable({
        over: function() {
            $(this).addClass('droppableHover');
        },
        out: function() {
            $(this).removeClass('droppableHover');
        }
    });
    

    还有你的 CSS:

    .droppableArea {
        border: 1px solid black;
    }
    .droppableHover {
        border: 1px solid red;
    }
    

    您可以在实际操作中查看here

    【讨论】:

    • 这是个好方法。但是用户应该如何理解您的Testing 字符串是可拖动的。我对使界面更直观的视觉指示感兴趣
    • 这总是很难,而且我一点也不擅长 UI。我想出的是 jsfiddle.net/hvFHM/2,但 css 很糟糕,而且看起来有点丑……设计不是对不起!
    • 最好一直显示十字箭头,表示那个东西是可拖动的
    猜你喜欢
    • 2011-12-11
    • 2012-06-23
    • 1970-01-01
    • 1970-01-01
    • 2014-01-08
    • 1970-01-01
    • 1970-01-01
    • 2013-03-19
    • 1970-01-01
    相关资源
    最近更新 更多