我们偶尔需要通知用户有关警告或问题的信息。但通常情况下,特别是如果这是一个常见问题,用户只会忽略警告并继续。通常用户甚至不会记得看到警告,但我们检查他们的日志并看到有几个显示。那么,当你试图告诉他们重要的事情时,你如何让用户注意?
这并不像强制用户在允许用户保存之前解决所有问题那么简单。他们经常需要出于各种原因(通常是针对无法立即解决或根本无法解决的问题)保存我们的业务规则不严格的数据。
我们有一个更好的警告/错误处理系统,我认为会有很多帮助,但我想看看别人做了什么。
答案 0 :(得分:22)
如果您希望用户注意警告,请适量使用它们!
UAC在Vista中的一个大问题是人们收到了很多通知,他们停止阅读谁正在请求访问什么,他们只是给予了许可不假思索。
另一个示例是在将文件发送到回收站时,资源管理器中的删除确认。按下“删除”后,我习惯于立即点击“确定”,我错过了对话框告诉我文件不会被移动到垃圾箱,但无论出于什么原因立即删除的事实。
我的个人修复:我禁用了回收站的删除确认。如果某些东西无法移动到垃圾箱,我仍然会收到一条消息,这次我知道它可能很重要,所以我会注意。
结论:不要向用户发送垃圾邮件,否则重要警告会在噪音中丢失。
答案 1 :(得分:8)
警告的质量不会阻止用户提交无效数据。如果您允许提交无效数据,则会是。
如果您有必须提交给规则系统的数据,那么该数据必须在提交之前有效。但是,允许用户保存他们的工作是一个单独的问题。您应该允许用户保存他们的工作,然后在数据有效时将数据提交给规则引擎。
答案 2 :(得分:7)
根本问题是用户不喜欢阅读,他们只是想独自完成工作:)。
解决这个问题的最佳方法如下:
长错误/警告消息根本无法读取。用户将会得到关于第五个单词并认为“这需要花费太多时间,我只想回去工作”。
答案 3 :(得分:5)
我的建议归结为三件事。
如果您有一个包含所需数据的表单,则将该字段颜色编码为红色或用星号突出显示该字段以表明它是必需的。禁用“确定”或“确认”按钮,直到填写所有必填字段。
对于数据不完整或不一致的字段,请打开工具提示或对字段进行颜色编码,以便用户知道某些内容可能有误。您还可以在表单上的某处突出显示警告列表。但是不要停止数据输入。你只会让用户感到沮丧和愤怒。
答案 4 :(得分:2)
我必须承认,我经常点击“确定”或者我有条件做的事情,让对话无需思考即可消失。通常这种情况发生在它们太多的时候。
在没有声称自己是任何形式的心理学家的情况下,我认为注意不寻常的事情并过滤掉重复的事物是很自然的。
考虑到这一点,也许值得考虑让不太重要的对话减少干扰,以便真正重要的对话得到更多的关注。
我认为烤面包机信息以及google处理其在线应用程序中的消息的方式是如何通知用户不必要的事情的真实好例子。
<强> - 编辑 - 强>
现在我重新阅读了我的帖子,我记得在“不要让我思考”中读到这篇文章。
一本精彩的小书(几十页),充满了美观易懂的可用性。有点专注于在线可用性,但也可以在离线应用程序中可靠地应用。
答案 5 :(得分:2)
这就是我们的计划。从本质上讲,创建一些Bugzilla-ish来存储这些错误/警告/无论如何。但它也与其他一些答案密切相关。
而不是使用简单的MessageBox,在类似Visual Studio的错误窗口中显示警告/错误。只要有问题,它们就会显示在此窗口中。
如果保存了数据,请将所有警告/错误保存到数据库中。现在任何人都可以看到当前的问题 - 奖金!此外,这些问题可以从数据库加载,而不是一直在应用程序中检测它们,这将有很大帮助 - 一些问题并不容易检测。
允许用户执行多项操作,例如:
将所有这些操作记录到数据库中,因此我们有责任
简而言之就是这样。现在问题仍然存在,所以他们在用户面前,直到他们解决了。可以跟踪问题,所以如果我们得到位,我们可以告诉球被丢弃的位置。我希望它有效!
答案 6 :(得分:1)
虽然我从来没有在以前的网站上实现这一点,但我想创建一个自定义对话框,用户必须选中一个框,说明他们已阅读并确认了该消息(然后记录该响应)。这是针对ISO-xxxx公司的,所以这种官僚主义是对这些类型错误的合理回应。
我的另一个更邪恶的想法是将“否”或“取消”作为默认选项。最终他们会按下Tab-Enter击键,然后你就可以将其切换回来。
答案 7 :(得分:1)
打破系统!
老实说,我的经验是,如果你不希望最终用户在没有明确理解的情况下做某事,那就不要这样做了......
与整个“Windows错误/警告消息”一样严重烦人,我从未注意到程序告诉我我不能做某事......然后我被迫问自己“为什么不”
时间谷歌答案......或RTFM
我知道使用这种方法并不总是可行,但如果你能......他们会听!
答案 8 :(得分:1)
我喜欢那些暗示有问题的程序,尽可能地忽略它 - 这听起来非常像你正在努力的。我一直在考虑的一件事(但含糊不清,因为我没有使用它)是为错误/警告设置一个状态指示器(有点像网络浏览器的无所不在的悸动,但是错误)。这个图标会改变状态,有点像交通信号灯,表明程序迟早会有问题需要解决 - 如果数据问题可以在以后纠正并且不会导致任何重大问题,红色表示在完成当前作业之前必须修复的任何问题(对于表单数据,这将意味着整个事务,而不是当前表单)。显然颜色是不够的,必须有一些支持色盲的人,但你明白了。单击该指示器将显示问题列表(并且可能解释为什么这是一个问题 - 以便人们可以指出代码的假设何时无用或错误),并选择问题允许你跳到可以修复的字段。
你应该做的一件事,无论你最后采用什么方法,都要仔细检查你的警告并弄清楚它们是否真的有必要。我已经看到太多程序警告我关于完全合理的输入然后被接受,或者警告我关于程序的通常行为。这种情况有助于让人们点击警告。如果你有警告的日志,你可能会从那里开始 - 为什么人们点击它们?他们可能有条件,或者可能是真的没有问题,有人没有告诉你事情已经发生了变化。
答案 9 :(得分:0)
我非常喜欢安装插件时的firefox方法:ok按钮被禁用并显示倒计时5秒。之后,使用可以选择忽略它。
答案 10 :(得分:0)
对于Web应用程序,alert()和confirm()javascript方法虽然有点基础,但可以达到防止用户做某事或确保他们明确同意他们已被警告过的事情的效果。
对于其他情况,如果操作不会对业务流程造成相当大的干扰,我们通常会在提交表单后在页面顶部显示一个小警告框。
例如,我们的应用程序需要在多个地方进行位置验证(有效的城市/州/邮编)。
如果位置绝对严重,我们会在表单上填写。
如果应用程序的某些方面需要该位置,我们将使用confirm()确保他们了解在没有有效位置的情况下他们将无法使用某些功能。
< / LI>在某些情况下,我们使用默认位置。在这种情况下,我们在下一页的顶部提供消息/警告框,指示正在使用默认位置。
答案 11 :(得分:0)
我发现如果您为自己使用生成日志消息(即使该使用直接使用户自己受益),让用户报告问题的唯一方法是让应用程序为他们执行此操作。
在处理可能出错的用户输入的情况下,您是否考虑过使用拼写检查时使用的红色波浪形或者在用户完成工作时对问题区域进行某种突出显示?大多数用户都接受过使用错误软件忽略对话框的培训,但是这种消息可能会清楚地表明错误是用户需要修复的。
答案 12 :(得分:0)
您是否清楚为何会出现各种异常情况?您尝试使用以下每条消息实现什么目标:
让用户查看明显错别字或错误的数据
让其他人在稍后阶段查看有关更多信息的数据时
告知此用户以及其他任何在稍后阶段查看数据的人员
确保用户了解其行为的后果
能否以不同的方式更有效地实现这些目标?
一些想法(没有一个能自动成为银弹):
保持消息简短且相关,排除任何不提供其他信息的语言(例如“请”等),告诉用户对他们的期望(即代替“邮政编码为空”使用“输入”邮政编码“。)。
使用用户理解的语言,始终提供足够的信息,尝试尽可能具体。
对不同类型的警告和错误使用不同的查看消息(使用字体,颜色,成像,可能还有动画和声音)。
重温整个过程,以便有人必须处理随后提交警告的任何信息。
下次将信息带到屏幕时可视化警告(即突出显示有问题的区域),以便以后可以在有更多信息时解决这些警告。
在警告中添加注销,例如请求用户在每次需要解除警告时输入密码。
使操作无法撤消,因此您不需要警告
答案 13 :(得分:0)
不要尝试用编程来解决。看看你是否可以改变数据输入过程。
答案 14 :(得分:0)
使用颜色和图标。
绿色 - 一切正常(或确认事情按预期发生)
黄色 - 警告。您的用户可能会或可能不想查看问题
红色 - 错误。需要用户交互才能解决的问题。
我也建议(正如其他人在这个帖子上所做的那样)谨慎使用。