找回密码
 注册
搜索
热搜: 超星 读书 找书
查看: 80|回复: 0

[【心情日记】] 选择的权利

[复制链接]
发表于 2024-1-17 00:36:01 | 显示全部楼层 |阅读模式
有个用javascript发出声音的小需求,查了下资料,发现有两种办法。试了下,貌似可行。但是,很快就发现了问题,谷歌浏览器提示,用户没有和页面交互,不能发声。
什么意思呢?就是说需要用户先对网页有所操作,比如点击一下某个按钮等。也就是说发声必须由用户启动,而不能自动发声。这是谷歌浏览器的规定(policy)。
这个规定也有道理,就是避免在用户不知情的情况下,突然网页发声,体验不好。
但是,如果“我知道我在做什么”,我就是要自动发声,就因为这个规定而无法实现了。最后只能用web api做个服务端,实现发声的功能,然后从javascript里去调用web api。功能是实现了,但到底感觉不爽。
谷歌浏览器从安全,用户体验等方面考虑,制订了很多限制,不能说没有道理。问题是,如果“我知道我在做什么”,这些限制就碍手碍脚了。最好的设计是设置一个开关,比如缺省情况下禁止自动发声,但是可以通过修改配置选项改变,这样就两全其美了。归根到底,设计者不能自作聪明,以他自己认为最合理的方式替用户设置好。
类似的设计不少,比如一些“一键实现某某某”的程序,点击一下就能实现全部功能,看起来很爽很方便,但是,如果有设计者没有想到的需求,这个“一键实现”就反而不方便了。
我们不需要设计者告诉我们,我们最方便,最安全的操作方式是什么,因为设计者不可能考虑到我们所有的需求。我们只需要设计者提供选择,你可以缺省设置为你认为合理的方式,但是一定要让我们有选择“不这样做”的权利。我们不是小孩,知道自己在做什么。不但软件设计如此,别的很多事也如此。

评分

1

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|网上读书园地

GMT+8, 2024-12-26 02:15 , Processed in 0.186651 second(s), 5 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表