第 1 页 共 26 页
1
Google AJAX Search API+TAG=美味的站点?
作者:cleverpig
第 2 页 共 26 页
2
目录
前言...........................................................................................................................................4
什么是 Google AJAX Search API ? ...........................................................................4
用户群.......................................................................................................................................4
介绍...........................................................................................................................................5
“Hello,World”开场白..............................................................................................5
浏览器兼容性...................................................................................................................7
API 升级问题 ..................................................................................................................7
示例...........................................................................................................................................7
基本功能...........................................................................................................................8
GSearcherControl 绘制(Draw)模式.................................................................8
搜索者对象(Searcher Objects) ........................................................................9
搜索者选项(GsearcherOptions) ........................................................................9
控制展开模式.................................................................................................................10
控制搜索者结果定位.....................................................................................................10
保持搜索结果.................................................................................................................10
设置站点限制.................................................................................................................11
搜索控制回调方法.........................................................................................................12
自定义 Search Form .................................................................................................13
高级的商标用法.............................................................................................................13
附加示例.........................................................................................................................14
Troubleshooting.............................................................................................................14
API 回顾 ................................................................................................................................14
不足之处.................................................................................................................................15
风格化搜索控制.....................................................................................................................15
风格化搜索结果.....................................................................................................................15
使用 JSON 和 Dishy 轻松集成美味书签 ...........................................................................16
什么是 Dishy?............................................................................................................16
Dishy 能做什么?........................................................................................................16
Dishy 初始化属性........................................................................................................17
Dishy 其它属性和方法................................................................................................17
下载 Dishy....................................................................................................................19
Dishy 示例....................................................................................................................19
改进 Dishy 的
engage 方法 ......................................................................................19
使用 Tags+Search 模式丰富页面的相关性 ....................................................................22
Tags+Search 模式 .....................................................................................................22
使用 Dishy+AJAX Search API 实现 Tags+Search 模式 ................................22
具体实现第一步:增加 Dishy 对 tag 的过滤能力..................................................22
具体实现第二步:封装 Google AJAX Search API 和页面 request 类........23
具体实现第三步:完成测试页面.................................................................................24
</script>...................................................................................................................25
具体实现第四步:与网站集成.....................................................................................25
下载源代码.............................................................................................................................25
参考资源.................................................................................................................................25
第 3 页 共 26 页
3
感谢阅读此文.........................................................................................................................26
第 4 页 共 26 页
4
前言
del.icio.us 提供了多种可重用的数据格式。而它提供了通用 API 访问和类似 PHP
的输出格式,使这些数据也可以被 JavaScript 开发者将其作为 JSON 格式所使用。
Google AJAX Search API 提供一些简单的 web 对象:它们执行建立在各种 Google
服务(页面搜索、本地搜索、视频搜索、Blog 搜索、新闻搜索)之上的内嵌(inline)
搜索。
如何把这两项技术结合在一起呢?Google AJAX Search API+TAG=美味的站点?
什么是 Google AJAX Search API ?
图-1 这就是 Google AJAX Search API?
Google AJAX Search API 是提供在页面和 web 应用中嵌入 Google Search
的
JavaScript 代码库。当然像其它 Google 开发 API 相同,在使用它之前,你首先需要注
册一个 API key。
Google AJAX Search API 提供一些简单的 web 对象:它们执行建立在各种 Google
服务(页面搜索、本地搜索、视频搜索、Blog 搜索、新闻搜索)之上的内嵌(inline)
搜索。如果你设计页面是为了帮助用户建立内容(比如信息板、blog 等),而这个 API 可
以设计成:通过允许它们直接把搜索结果复制到它们的信息中的方式来支持前面的这些活
动。
Google AJAX Search API 是最新发布的,它的特性被广泛地用户使用,你可以通
过加入 Google AJAX Search API 讨论组
来进行反馈和技术讨论。
用户群
第 5 页 共 26 页
5
最好具有 JavaScript 编程和面向对象编程概念。
介绍
“Hello,World”开场白
这是学习 API 的最简单方式。下面的 web 页面代码显示了对关键词“VW GTI”的内嵌
搜索结果集合。之所以称之为集合,因为它包括了本地搜索、页面搜索、视频和 Blog 搜索
结果。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html;
charset=utf-8"/>
<title>Hello World - Google AJAX Search API Sample</title>
<link href="http://www.google.com/uds/css/gsearch.css"
type="text/css" rel="stylesheet"/>
<script src="http://www.google.com/uds/api?file=uds.js&v=1.0"
type="text/javascript"></script>
<script language="Javascript" type="text/javascript">
//<![CDATA[
function OnLoad() {
// Create a search control
var searchControl = new GSearchControl();
// Add in a full set of searchers
var localSearch = new GlocalSearch();
searchControl.addSearcher(localSearch);
searchControl.addSearcher(new GwebSearch());
searchControl.addSearcher(new GvideoSearch());
searchControl.addSearcher(new GblogSearch());
searchControl.addSearcher(new GnewsSearch());
// Set the Local Search center point
localSearch.setCenterPoint("New York, NY");
// tell the searcher to draw itself and tell it where to attach
searchControl.draw(document.getElementById("searchcontrol"));
// execute an inital search
searchControl.execute("VW GTI");
}