列表和上下文菜单,MMI的噩梦!
我更像是一个“服务器端”类型的开发者。
当我看到太多的HTML, CSS和Javascript,我需要药丸!
尽管如此,我还是喜欢挑战UI框架的MVC架构。我甚至为了好玩而编写了自己的web框架(但我想印度的一些可怜的开发人员现在正在遭受这种痛苦),并使用Swing开发Stellarium4Java。
所以,UI不是我的菜。现在是最新的Artifactory,我需要管理UI设计师和Web开发人员之间的沟通。我从这次有趣的经历中学到了很多。
在这个过程中,我遇到了一个非常基本的UI设计问题。这太基本了,我担心我错过了什么!
重点是:我们用来管理列表、选择、操作和上下文菜单的方式是完全不连贯的。
在实际的UI应用程序(胖客户端和Ajax)中,您将获得元素列表,然后可以对它们进行操作。通常,你选择一行,然后一些动作(按钮,菜单)被启用,你可以激活它们。但是为了减少点击和鼠标动作的次数,还有上下文菜单。这就是奇怪的地方……
你选择一行,然后实际上可以“右键单击”另一行。这样,上下文菜单上的操作列表与按钮和菜单中的操作列表不匹配。
您可以强制选择您右键单击的行,但很少有应用程序这样做!
另一个问题是,上下文菜单真的不是那么好(也就是说,我讨厌它们!):
- 它们不是Web浏览器友好的。
- 它们实际上并没有节省多少点击和手势(右键,移动,左键)。
- 它们在读取元素列表的过程中。
- 它们永远不会在你想要的时候消失,而且总是在你找到想要点击的菜单项之前消失。
- 要移除它们,你需要点击其他地方,祈祷你没有点击“一键购买”按钮。
Web上(以及iPhone/iPod上,因为没有右键)的一个解决方案是直接在列表本身作为列添加操作按钮。这是可行的,可以很好看(有好的图标),但这种技术非常沉重(一堆垃圾图标)。不管怎样,它是不可扩展的:5个图标已经太多了。
因此,UI设计师想出了一个非常酷的主意:当滚动行元素时,在列表的一侧出现一个悬停工具箱。
起初,我想:
- 它可能会起作用,但我们将与如何使用列表的大型UI肌肉记忆相对抗。
- 人们会讨厌它的!
- 工具箱离我的鼠标太远了,去那里会很烦人。
- 我们不是在这里重新发明UI和人机交互!
但无论如何,我抓住了机会,我们实现了它。要看它,你可以去Artifactory现场演示,以“log”为例进行快速搜索,并将鼠标悬停在列表上方。它仍然是测试版,之前的选择/链接操作没有删除,所以它可能会令人困惑。作为匿名用户,你的操作列表是有限的,但你仍然可以得到它的感觉。
我已经使用这个功能2周了,坦白地说:我喜欢它!
我将鼠标悬停在列表的左侧,我可以读取我所在的行,然后单击激活操作。只是自然的动作,只有一个点击。
可能是我受了影响(这是我们的应用程序在最后:),这就是为什么我焦急地等待反馈!
你怎么看?
