我们在工作和生活中经常会用到搜索框,比如进入一款电商平台,我们需要去搜索自己想买的东西,就可以依靠搜索框完成这一动作,所以搜索框的设计也是重中之重;本文作者分享了关于从三个方面设计搜索框,我们一起来了解一下。

“搜索”是产品中一个非常必要的功能模块,搜索就像为用户提供了一条便捷的绿色通道,方便用户快速检索内容。

搜索动作在 App 中依靠搜索框来完成,好用的搜索框很大程度上决定了产品的搜索体验如何;大多数搜索框存在相似性,但真正好的搜索框会在细节上为用户带来差异化的反馈,带来很暖很贴心的感觉。

一、搜索框结构分析

从体验层面上看,一个良好的用户体验需要具备完整的流程。搜索框的使用流程可以简单划分为:

  • 使用前-找到搜索框入口;
  • 使用中-点击输入内容;
  • 后-展示搜索结果。

    其中使用中会涉及到跳转和输入两种不同的状态,在下面的文章里我会展开来分析。

二、搜索框的常见类型

回想常用 App 的搜索框,好像它们的样式看起来差别并不是很大,但其实每个搜索框的细节都是经过精心设计的,下面总结了几种常见的搜索框类型。

1. 搜索图标
页面上只提供一个放大镜图标,通常需要用户点击图标后才能跳转到搜索页面,例如小红书就将搜索图标放置在页面右上角。

2. 基本搜索框
基本的搜索框组成包括放大镜图标、文字提示、输入框三部分。微信主页的搜索框采用了这种基本形式,文字提示为搜索,简洁清晰。

3. 文字提示类搜索框
和基本搜索框的唯一不同的地方在于,这类搜索框中的文字提示部分不再是搜索两个字,而是根据产品需求支持预置多组文字提示并在搜索框内循环展示。

在大众点评的顶部搜索框中,文字提示部分循环展示了三组不同的内容,引导用户快速检索到好吃的和好玩的。

4. 功能类搜索框
之所以叫做功能类搜索框,是在文字提示类搜索框的基础上根据产品功能的需要额外添加了常用的功能性图标,如扫码图标、拍照图标、语音图标等,赋予搜索框更多的功能属性。

经常使用豆瓣看书评的同学可能会注意到豆瓣主页的搜索框中有一个扫码图标,点击之后可以快速扫描图书条码或二维码,快速识别书的内容,省去检索的麻烦。

淘宝搜索框的组成更复杂,除了支持扫码外还有相机图标,方便用户拍照识别商品。

三、搜索框设计状态分析

使用搜索框搜索的过程总体可以分为四部分:搜索前、点击搜索框、输入中、搜索后。设计分析过程中要先理清整体的搜索流程,再考虑每个状态对应的交互细节及反馈,这样才能保持逻辑清晰。

1. 搜索前-默认状态
位置:

大多数搜索框出现在页面顶部,作为一个大的触摸目标更符合用户的认知习惯,更容易被用户发现和使用。

在苹果自带的地图应用中,搜索框放在页面中部偏下的位置,相比于顶部搜索框,这样的位置分布更方便用户单手操作。

样式:

搜索前的状态除了前面讲的几种常见的搜索框样式外,有些产品会直接在搜索框增加“搜索”按钮。

阿里系产品包括淘宝、支付宝、闲鱼等主页搜索框都额外添加了“搜索”按钮,相比于点击搜索框再点击键盘搜索内容推荐,直接点击按钮简化了搜索流程。

2. 点击后-获取焦点
搜索框:

点击搜索框后,框内的放大镜图标会消失,出现闪烁的光标引导用户输入,搜索框右侧会出现“取消”按钮。

点击大众点评的搜索框后,搜索页会出现三个选项,点击每一个选项,搜索框内的文字提示都会改变,有效帮助用户提升搜索准确度,虽然是很小的点但做的很用心。

键盘:

点击搜索框后会弹起键盘,在不输入内容的情况下,点击键盘自带的“搜索”按钮能查询搜索框中推荐的内容。


搜索页:

搜索页的内容通常包括历史搜索、搜索发现、热门推荐等版块,记录用户的搜索行为,推荐目标商品或服务,提高转化率。

豆瓣将最热门的内容都展现在搜索页中,包括实时更新的热门书影音榜单、热门小组、热门话题等,为用户提供有效的引导。

关于历史搜索我们还可以继续深入分析,思考这些记录怎么排序、最多显示几条记录……

网易云音乐的历史搜索最多可以保留10条,采用横向滑动的手势交互可以节省屏幕空间。根据内容长短一屏一次可以显示2-3条记录,这会导致排在后面的历史记录不容易被用户快速发现。

淘宝的历史搜索可以容纳更多的数量,当搜索记录超过两行时会有一个小的展开按钮,点击按钮可以查看早期的记录,这样既能节省屏幕空间也能最大化容纳历史记录。

3. 搜索中-输入内容
删除/取消:

当开始输入内容时,在搜索框的右侧会出现删除图标,方便用户一键删除输入的内容,这里要注意区分删除和取消的区别。

在淘宝中点击“删除”图标,页面会返回到上一级也就是搜索页;

点击“取消”按钮,页面会直接返回到主页也就是搜索前的状态。

搜索提示:

在用户输入内容时,产品会根据用户输入的内容提供相对应的搜索推荐,这是搜索框的必备的交互反馈。

通过合理的词条推荐能极大降低用户的思考时间,提高搜索效率,同时省去再次点击搜索按钮的流程,降低用户的操作步骤。

字数限制:

目前我所知道的大多数 App 在搜索时都没有字数限制问题。

回顾一下搜索使用场景会发现用户在搜索框内输入任何内容都是有可能的,尽量不要约束用户的输入内容。无论用户输入多少内容,点击都可以完成基本的搜索操作,这样整个流程才完整。

在百度中输入过多字符时,会提示查询限制在38个汉字以内,多的字符会被忽略,虽然给出了提示但并未打断用户的操作流程,可以让用户继续完成搜索。

4. 搜索后-展示结果
符合预期:

搜索的理想状态是搜索到的结果符合用户的预期,满足用户的搜索需求,并把最吻合的搜索结果排在前面,为用户带来清晰的结果展示。

智能提示:

智能提示是对用户输入内容上的一种提示或纠正,如果用户输入的内容有问题或不够标准,在搜索结果中会能给最贴切的搜索结果。

在淘宝中输入“shouji”或“souji”,淘宝会根据拼音给出“手机”的搜索结果,但仍保留原标签,方便用户再次点击搜索;输入“手ji”时,会直接给出“手机”标签,这种差异化的反馈能更好的为用户服务。

无结果提示:

如果没有搜索到用户输入的内容,搜索页会显示一个空状态,提示用户没有搜索结果。

相比于直接显示搜索无结果的状态,拼多多的搜索结果首先会标明相关商品较少,然后将搜索内容拆分成不同的标签进一步引导用户来发现内容。

四、最后

这里介绍了关于搜索框设计的一些基本体验,学会从整体到局部再到具体细节一步步分析,大家会挖掘到更多更细的设计要点。

从结构、类型和状态3个方面,帮你掌握搜索框设计相关推荐

  1. C#编程语言(六):枚举类型与结构类型

    枚举类型 枚举类型(也称为枚举)为定义一组可以赋给变量的命名整数常量提供了一种有效的方法. 例如,假设您必须定义一个变量,该变量的值表示一周中的一天. 该变量只能存储七个有意义的值. 若要定义这些值, ...

  2. C#中将结构类型数据存储到二进制文件中方法

    以往在vb6,vc6中都有现成的方法将结构类型数据写入和读取到二进制文件中,但是在c#中却没有现成的方法来实现,因此我查阅了一些资料,借鉴了网上一些同学的做法,自己写了个类似的例子来读写结构类型数据到 ...

  3. Matlab中的结构类型struct

    结构(struct)数组 要在MALTAB中实现比较复杂的编程,就不能不用struct类型.而且在MATLAB中实现struct比C中更为方便. 4. 3.1 结构数组的创建 MATLAB提供了两种定 ...

  4. 不要伤害指针(3)--指针和结构类型的关系

    可以声明一个指向结构类型对象的指针. struct MyStruct {int a;int b;int c; }; struct MyStruct ss = {20,30,40};//声明了结构对象s ...

  5. DELPHI学习---结构类型

    Structured types (结构类型) 结构类型的一个实例可包含多个值.结构类型包括集合.数组.记录,也包括类.类引用(class-reference) 和接口类型.除了集合只能包含有序值以外 ...

  6. Linux 命令之 arch --显示主机的硬件结构类型

    文章目录 介绍 命令示例 介绍 arch命令主要用于显示当前主机的硬件结构类型,arch命令输出的结果有:i386.i486.mips.alpha等. 此命令的适用范围:RedHat.RHEL.Ubu ...

  7. struct lnode是什么结构类型_【自考】数据结构第三章,队列,期末不挂科指南,第4篇

    队列 这篇博客主要介绍一下队列的概念,并且采用C语言,编写两种存储实现方式:顺序存储和链式存储,当然还有常规的队列基本操作的实现算法 队列基本概念 标准解释:队列(Queue)是有限个*同类型*数据元 ...

  8. 结构类型需要重载GetHashCode和Equals

    我比较迟钝,到现在才知道结构类型放在字典作为键时,效率是不好的,最好重载GetHashCode和Equals,那效率究竟差异有多大呢?我写了一个测试程序. ResourceServiceKey2 ke ...

  9. 两个结构体变量可以直接赋值吗_Gox语言中的结构类型-GX6

    Gox语言中,结构类型(struct)其实并不是很常用,因为Gox语言本身就是动态类型的语言,一般的类似结构体的数据直接用数组或者映射类型就可以了,里面的数据项可以是任意类型,包括嵌套复合类型.因此, ...

最新文章

  1. 关于JS的循环和函数,由入门到放弃
  2. xxx系统可用性和易用性分析
  3. P2502 [HAOI2006]旅行 最小生成树
  4. JDK12的五大重要新特性
  5. html5大赛是什么,IE9开发大赛为HTML5打了一针兴奋剂
  6. C#输入姓名或者拼音码(姓名的首字母,大小写均可)进行快速模糊查找
  7. 【探索HTML5第二弹05】响应式布局(中),一步一步响应式布局
  8. [html] 如何让<p>测试 空格</p>这两个词之间的空格变大?
  9. 修改表名_面试官:如何批量修改mysql表字段、表、数据库字符集和排序规则
  10. 这10个实用的Javascript调试技巧,你知道吗?
  11. 【Merry Christmas】圣诞节,给博客添加浪漫的下雪效果!
  12. c#开发之八---mvc
  13. cad插入块_多重插入块加密CAD图纸怎么分解
  14. Matlab的复共轭转置
  15. 计算机主板的位置,电脑主板在哪个位置(主板工作原理和主要种类)
  16. 算法时间复杂度O(1)
  17. 你有被代理过吗?讲讲开源框架都在用的代理模式
  18. win10 无声音 耳机设备不显示 驱动显示正常 就是没有声音
  19. outlook自定义快捷键_如何在Outlook中自定义待办事项窗格
  20. input 验证码 密码 输入框

热门文章

  1. 65.深度解密网络项目三:抖音起名项目整体步骤详解
  2. win7无线网络适配器打不开
  3. 100句十分精辟的人生格言
  4. QQ空间里的“可能认识的人”深层思考????
  5. xxl-job安装部署
  6. css - 一行代码让网站全部页面变成灰色(清明节等日期,很多网站变灰了,是如何实现的?)超级简单
  7. 种类并查集(蓝桥侦探)
  8. Cookie设置HttpOnly属性
  9. xbox360春季更新后对媒体文件的支持情况
  10. 海云安首席科学家齐大伟博士荣获“2023国际软件工程会议(ICSE)最具影响力论文奖”