不少项目都有所搜结果页面,虽然说每个项目都有自己的一套需求,细节也各不相同,但我认为有些有些元素应该是任何结果页的界面中都需要的。
以这些元素开始,然后根据情况稍加修改,就能得到一个很不错的页面。
1、在搜索结果中突出显示查询词。
2、在结果页面重述查询条件。
3、显示已找到的结果数量。
4、包含“前一个”和“后一个”按钮以及其余页面的链接,以便在结果中来回移动。
链接应当灵活,例如第一页不应有“前一个”链接。
5、为每个结果提供链接,指向具体结果。
6、单独设计没有结果页面,可提供搜索指导,例如评写错误提示。
7、考虑提供高级搜索/过滤器。
过滤器通常出现在在最初的搜索执行之后,目的是为了帮助用户所见选择数量,同事增加结果的准确度。
形式有多种。
8、测试一次搜索命中率。
如果1/5的用户在第一次尝试时就“没有结果”,可能搜索系统在设计上出了问题。
-----------------------------------------------------------------------------------------
以下是一个清单,排名不分先后。
- 在搜索结果中突出显示查询词。
- 在结果页面重复查询条件。
- 显示已经找到的结果数量。
- 包含前一个和后一个按钮以及其余页面的链接,以便于在结果中来回移动。链接应当灵活,例如第一也不应该有“前一个”链接,等等。(补充:在搜索结果列表上方和下方都要有分页链接。)
- 包含查询框,便于用户再次搜索。
- 不要显示结果页的url,除非访问者都很懂技术,能理解url中的含义。(个人存疑)
- 为每一个结果提供易于理解的页面名称和描述。
- 页面名称应当是可以点击的链接,指向具体结果。
- 允许加入(适合于用户和内容的)分类和改良工具。
- 标明那些非常规页面的结果(例如PDF文件)







搜索框架下包含了多个设计模式,包括快速搜索、搜索结果、高级搜索、过滤器和分页模式等。
这些模式根据用户的目的以及所应对的解决方案的范围大小,还可以进一步被细分为多个类型。
快速搜索
一个简单的输入栏及搜索按钮。通常被放置在页面中最容易找到的地方。
首先,要理解用户为什么会使用快速搜索。
如果用户搜索的是唯一标识内容,而且他们知道标识符是什么,那么搜索将会非常准确。
在用户不知道自己要找的内容的名称。
当同时满足以下3个条件是,就能放心的依赖网站内的搜索系统:
- 你的内容是唯一标识的;
- 你的用户很熟悉那些标识符;
- 你的用户希望利用那些标识符作为定位内容的方法。
<< end
除了以上有关搜索的战略性观察之外,还有许多低层次的细节需要考虑,例如搜索栏在网页中的位置、它在网站中的稳定性、搜索框的标签、按钮的标签、以及是否提供分类下拉菜单或者自动提示等功能。
[分类下拉菜单]
[gap.com]
[自动提示]
搜索结果
任何一次搜索都可能会产生2中类型的搜索结果页,以及4中结果。
1、搜索陈列页(Search Gallery)。
[搜索陈列页]
2、搜索部门页( search department):它显示通往不同陈列页的链接,并在显示具体的陈列页之前鼓励用户进一步缩小选择范围。
[bestbuy提供了一个搜索部门页突出显示任天堂wii的产品]
搜索产出
不论结果页面的类型如何,一次搜索会有4中可能的产出。
- 准确适配或非常相关。
- 相关条目。
- 不相关的结果。
- 没有结果。
第一种无疑是最好的,其他3种豆可能会带来灾难,因为事实证明,用户不会为搜索付出很多努力。
最能激励用户修改条件、继续搜索的,是当他们看到“没有结果”的时候。不过大部分用户看到这个页面就放弃了,只有一部分人会进行二次尝试。
对于设计师来说,关键似乎在于让用户在第一次尝试时就能得到相关的结果,这样的网站最有可能成功。
高级搜索
非正式的观察资料显示,长期稳定地使用高级搜索的群体非常稀少,而在此群体之外,这一功能能基本无人问津。
过滤器
是另一种形式的高级搜索,不过有两点不同。
首先,过滤器通常出现在最初的搜索执行之后,目的是为了帮会组用户所见选择数量,同时增加结果的准确度。
其次,我们可以用多种方式来显示过滤器。既可以像关键字链接那样简单,直接前往子分类或者其他内容页,也可以包括一大堆滑动条、复选框和单选按钮,用以触发实时的更新。
使用过滤器搜索时需要注意,要想让用户使用他们,就必须首选吸引用户的注意。而这一点实现起来比看上去要复杂得多。
相关推荐
京东-JMQ框架是京东集团自主研发的消息队列框架,旨在提供高性能、高可用性和高可扩展性的消息队列服务。下面是京东-JMQ框架的详细介绍: 架构设计 JMQ框架的架构设计主要分为三个部分:Producer、Broker和...
- **高可用性**:通过多节点冗余部署、故障自动恢复等机制,保障了系统的高可用性。 - **可扩展性**:支持动态资源调整,可根据业务需求灵活伸缩。 - **高性能**:采用高性能网络通信协议及数据处理技术,确保了系统...
在Action Bar中,用户可以快速访问常用操作,提高应用的可用性。 2. **ActionBarSherlock库**:这个库是Action Bar的兼容解决方案,它使用了反射和自定义视图来在旧版本的Android上模拟Action Bar的行为。它提供了...
- **数据冗余与可靠性**:为了确保数据的高可用性,HDFS会为每个文件块创建多个副本,默认情况下每个块会有三个副本,分别存储在不同的节点上。 - **数据访问与读写优化**:HDFS被设计成适合一次写入多次读取的应用...
Skiptracer设计时考虑了易用性和可扩展性。它包含了一系列预定义的模块,可以针对不同的数据源进行定制化抓取。这些模块可能包括对社交媒体平台、电话号码、电子邮件地址等信息的搜索。通过这个框架,用户可以快速...
在文件上传方面,它不仅支持常见的本地上传,还提供了对接阿里云OSS、腾讯云COS以及七牛云存储的服务,增强了文件管理的灵活性和可用性。 同时,d2-crud框架还考虑了地理位置信息的管理,提供了省市区选择功能,这...
2. **分布式架构**:Elasticsearch设计时考虑了可扩展性和高可用性,通过分片和复制机制实现数据分布。Easy-Es框架可能已经内置了这些配置和管理,让开发者可以快速部署到分布式环境中。 3. **RESTful API**:...
在实际运行中,为了保证服务的可用性和高并发处理能力,项目可能考虑了负载均衡和分布式缓存等技术。如使用Nginx作为反向代理服务器,分散请求压力,以及利用Redis进行数据缓存,减少数据库访问,提高系统响应速度。...
- **数据高可靠性设计** 除了冗余存储之外,还需要通过数据校验、故障恢复机制等手段来进一步提高数据的可靠性。 - **数据高可访问性** 通过优化查询路径、使用索引等手段来提高数据查询的速度和效率。 - **数据...
整个项目的构建和部署过程均遵循了现代软件开发的最佳实践,保证了系统的高可用性、可扩展性和易维护性。 通过本项目,开发者可以深入学习和掌握Spring Boot框架在真实项目中的应用,以及前后端分离架构下的交互...
【文章摘要】本文主要探讨了在不同的任务模式下,手机APP的三种典型交互框架——标签式、侧边展开式和宫格式的可用性表现。研究通过模拟任务的方式,对比了被试者在执行切换任务和沉浸任务时,使用这三种交互框架的...
本研究通过眼动跟踪技术,结合认知心理学相关理论,探讨了不同布局的网页在实际使用中的视觉搜索策略问题,并针对网页可用性设计提出了建议。 网页布局是网页设计中的一个重要环节,它决定了网页内容如何呈现以及...
- **Solr**:是基于Lucene的高性能企业级搜索平台,它支持分布式部署,具有高可用性和可扩展性。 #### 六、Lucene的主要组成部分 - **Query**:定义了查询的逻辑,例如布尔查询、模糊查询等。 - **Analyzer**:负责...
该系统的设计思路基于CAP теория,使用分布式架构和消息驱动异步计算来实现高性能和高可用性。 系统架构: 1. 报价引擎:负责计算报价数据,并将其存储在缓存中。 2. 搜索框架:负责处理搜索请求,并将其路由...
使用Docker容器化技术进行部署,可以实现快速部署和环境一致性,提高系统的可用性和可维护性。 综合来看,【毕业设计】一个集成了SSM+Shiro的博客系统(期末设计-毕业设计)是一个综合运用了现代Web开发技术和安全...
项目的源码开放,作者经过亲自测试,保证了系统的可用性。 在技术实现上,该Python博客系统采用了当下流行的开发框架和技术栈。首先,为了保证系统的高性能和扩展性,很可能采用了Django或Flask这样的高级Web框架。...
- 可用性测试:检查用户界面的易用性,包括导航逻辑、操作提示和错误信息的友好性。 - 压力测试:模拟大量请求,验证系统在极限条件下的崩溃点和恢复能力。 2.1 测试计划 测试计划应详细列出测试的时间表、资源...
此外,还需考虑非功能需求,如安全性、性能、可用性和可扩展性。 4. **系统设计** - **分层模式**:系统采用经典的三层架构,包括表现层、业务逻辑层和数据访问层。表现层负责用户交互,业务逻辑层处理业务规则,...
这些技术的整合使得RuoYi-Cloud-Plus成为一个支持多租户、具有高可用性和扩展性的现代化后台管理平台。 RuoYi-Cloud-Plus 微服务通用权限管理系统的开发,不仅继承了原系统的优良特性,还通过引入当前流行的开发...