Google AJAX 搜索 API 集成与多源搜索结果展示实现

作者:小括号

时间:2026-10-25

浏览:478

本文介绍了如何使用 Google AJAX 搜索 API 在网页中集成搜索功能。通过 JavaScript 加载库并实例化 SearchControl,配置多个 WebSearch 以限制特定站点,同时添加博客、视频、新闻、图片及本地地图搜索。代码展示了如何设置结果集大小、自定义标签与样式,并通过 tabbed 模式绘制控件,实现多源信息的统一展示。

文章目录

Google AJAX 搜索 API 集成与多源搜索结果展示实现

Google AJAX 搜索 API 相关文档可参考:http://code.google.com/intl/zh-CN/apis/websearch/docs/

具体实现代码如下:

<!DOCTYPE html>
<html>
<head>
<title>Google AJAX 搜索 API</title>
<style type="text/css">
#searchcontrol .gsc-control
{ 
width: 100%;
} 
#searchcontrol .gsc-result-cnblogs .gs-title
{ 
color:Red;
} 
</style>
<script src="https://www.google.com/jsapi?key=ABQIAAAAWUT8aaIj9mtqQa087LjVOhTPB5B7LRDljl2Cr4-
JwBNft1mFrRRmR1RoYEUCZCj0dtS2gIc8Al4-VA"
type="text/javascript"></script>
<script language="Javascript" type="text/javascript">
google.load("search", "1");
function OnLoad() {
//搜索设置
var options = new google.search.SearcherOptions();
//当搜索结果为空时显示内容
options.setNoResultsString('查询结果为空!');
//搜索控件实例化
var searchControl = new google.search.SearchControl();
//每次显示8个搜索结果(取值范围:1-8)
searchControl.setResultSetSize(8);
//网页搜索
var siteCnblogs = new google.search.WebSearch();
//标头
siteCnblogs.setUserDefinedLabel("本站");
//样式后缀名
siteCnblogs.setUserDefinedClassSuffix("jb51");
//站点限制
siteCnblogs.setSiteRestriction("jb51.net");
searchControl.addSearcher(siteCnblogs, options);
//局部搜索
var siteZjfree = new google.search.WebSearch();
siteZjfree.setUserDefinedLabel("素材搜索");
siteZjfree.setSiteRestriction("sc.jb51.net");
searchControl.addSearcher(siteZjfree, options);
//全网搜索
searchControl.addSearcher(new google.search.WebSearch(), options);
//添加博客搜索
searchControl.addSearcher(new google.search.BlogSearch(), options);
//添加视频搜索
searchControl.addSearcher(new google.search.VideoSearch(), options);
//添加新闻搜索
searchControl.addSearcher(new google.search.NewsSearch(), options);
//添加图片搜索
searchControl.addSearcher(new google.search.ImageSearch(), options);
//添加本地地图搜索
var localSearch = new google.search.LocalSearch();
//地图中心标记 测试时可使用“大雁塔”
localSearch.setCenterPoint("西安,钟楼");
searchControl.addSearcher(localSearch, options);
//绘制搜索
var drawOptions = new google.search.DrawOptions();
drawOptions.setDrawMode(google.search.SearchControl.DRAW_MODE_TABBED);
searchControl.draw(document.getElementById("searchcontrol"), drawOptions);
//执行搜索查询
searchControl.execute("google api");
} 
//框架加载完成后调用
google.setOnLoadCallback(OnLoad);
</script>
</head>
<body>
<div id="searchcontrol">
加载中...
</div>
</body>
</html>

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章