谈谈Google的翻页功能的设计

王志勇 发表于 2006年10月04日 10:54

当超过10项的搜索结果,Google会自动分页,你是否曾注意到,这个分页的链接,只出现在网页的底部,而网页顶部却没有分页的链接?分页的链接如下图:

从用户体验的角度,如果顶部也出现分页链接,实际上可有可无的。因为按照逻辑的操作,用户起码应该是快速浏览完每页的10项搜索结果,才会浏览下一页,或者干脆按键盘的“End”键,跳到网页底部,按“下一页”。所以说,顶部的分页链接作用不大。除非是网页一屏就显示所有的内容,顶部的分页链接才会起到作用,但这时候仍然是可有可无的。

从程序设计的角度,按照逻辑的程序设计,如果顶部也出现分页链接,如果仅仅在服务器端的程序做处理,必然要让循环程序再多循环一次,因为每天海量的搜索,这将耗费无数的服务器CPU、内存资源。也可以在客户端用JavaScript,将分页链接显示在顶部,这样就会减少一次循环。这种JavaScript方式,在我的程序中,得到了应用,也就是使用将后面的变量值提前到赋值之前来调用,网页的任何位置都可以在客户端显示服务器端程序的任何变量,而不用顾虑变量赋值的先后,其原理是……,这样的好处一是可以不用position:absolute而可以精确定位,二是Firefox竟然能够识别这样的JavaScript。今天正好想到了Google的分页链接的设计。

总之,Google的这种细微的人性化设计,也就是在一定情况下,顶部不需要分页链接,为产业起到了榜样的作用。

7条评论:
1   wells 2006-10-04 22:25
[quote]
如果仅仅在服务器端的程序做处理,必然要让循环程序再多循环一次
[/quote]

这一点不敢苟同
一般我的用法是,生成分页的代码(循环一次)
然后使用模板技术应用到页面上,
不管页面上需要显示几次
在服务器端只循环一次

应用这种做法可以在更多不支持Javascript的浏览器中看到正确的内容
而且,如果改良一下,像我的模板类支持Cache,
甚至不同用户如果访问同一页面的话,直接读取Cache,根本连循环都不会发生
可以更多的减少服务器资源的占用

2   muyulu 2006-10-05 01:18
真是牛....这样小的东西也能写这么多出来...不愧是搞技术的...
3   王志勇 2006-10-05 10:22
回wells Sir,谢谢你的回复,本文的意旨是提出一种利用客户端JavaScript来解决变量在网页中任意位置、不分先后地调用的解决方案。本文提到的这种特殊的情况,确实太特殊了,也就是需要先与大型的数据库相连使用循环程序而产生分页代码,再一次与数据库相连使用循环程序而产生内容的代码,再产生分页代码。如果分页的代码不需要与数据库紧密相连,而用一个循环程序即可以产生,这时候就可以像你所说的循环一次即可。
谢谢muyulu:)过奖了,实际应用比这个复杂很多。昨晚为了推导出一个公式,用了8页的纸进行演算,今天终于成功了。
4   Horse Luke 2006-10-05 12:21
呵呵,细微之处显功夫,这个又让我学到了一些东西。

不知道这篇文章你看过没有?《关于网站设计的几点矛盾》(http://blog.sina.com.cn/u/53e7af2f010003gc),你的意见是什么?(最好能够发表在那篇文章的评论,好大家得到讨论)

5   我的纯净水 2006-10-05 16:09
睬睬 乐啊
6   ccdot 2006-10-05 22:41
说的不全对。

我更看好的是“页面文字出现的宽度不100%”的原因。

发表评论:
名字: (*必填)
博客: (可省)

正文:

  记住信息?

王志勇:1980-09-26 (44周岁)
程序设计,前端设计。

版权声明:本博客所有文章,均符合原创的定义,禁止转载,违者将必究;正确的方法是贴原文的标题和网址即可。

与此相关的链接
自由勇专栏

Blog存档 Archives

2022年07月
2022年06月(15)
2022年05月(20)
2022年04月(16)
2022年03月(9)
2022年02月(9)
2022年01月(10)
2021年 +

2020年 +
2019年 +
2018年 +
2016年-2017年(9)
2014年06月-09月(10)
2013年 +
2012年 +
2011年 +
2010年 +
2009年 +
2008年 +
2007年 +
2006年 +
2005年09月(4)

Copyright © 2006-2024 auiou.com All rights reserved.
此Blog程序由王志勇编写