来源:http://www.ido321.com/1143.html

看到一些站点上加入了各种搜索引擎。

如Google、百度、360、有道等。就有点好奇。这个怎么实现?研究了一各个搜索引擎怎么传送keyword,找到了小窍门。于是乎,自家弄了一个百家搜索:

效果:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMTA0Mzg0Mw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

演示地址戳此:http://sousuodaquan.sinaapp.com/

ps:在列表中加入了糯米汇(http://www.nuomihui.com)的站内搜索,仅用于演示,别无它用。特此声明。

HTML代码:

<div class="sdiv">
<form id="sform" method="get" target="_blank" action="http://www.baidu.com/s">
<div class="mains">
<ul id="selectul">
<li id="selectedli" style="background-color: white;">百度</li>
<li>百度</li>
<li>谷歌</li>
<li>必应</li>
<li>有道</li>
<li>搜搜</li>
<li>搜狗</li>
<li>360</li>
<li>爱淘宝</li>
<li>亚马逊</li>
<li>当当</li>
<li>知道</li>
<li>维基</li>
<li>Crea</li>
<li class="lastli">糯米汇</li> </ul>
<input type="text" name="wd" id="findParam"/>
</div>
<input type="submit" value="搜索" id="btn" />
</form>
<h4 style="margin-left:100px">出处:<a href="http://www.ido321.com/" target="_blank">淡忘~浅思</a></h4>
</div>

JavaScript:

window.onload = function()
{
var selectul = document.getElementById('selectul');
var lis = selectul.getElementsByTagName('li');
var selectedli = document.getElementById('selectedli');
var findParam = document.getElementById('findParam');
var sform = document.getElementById("sform");
var lislen = lis.length;
for (var i = 0; i < lislen; i++) {
lis[i].onmouseover=function()
{
selectul.style.overflow = "visible";
};
lis[i].onmouseout=function()
{
selectul.style.overflow = "hidden";
};
lis[i].onclick = function()
{
selectedli.innerHTML = this.innerHTML;
switch(this.innerHTML)
{
case "百度":
findParam.name='wd';
sform.action = "http://www.baidu.com/s";
break;
case "谷歌":
findParam.name='q';
sform.action = "http://www.google.com.hk/search";
break;
case "必应":
findParam.name='q';
sform.action = "http://cn.bing.com/search";
break;
case "有道":
findParam.name='query';
sform.action = "http://www.sogou.com/web";
break;
case "搜搜":
findParam.name='w';
sform.action = "http://www.soso.com/q";
break;
case "搜狗":
findParam.name='q';
sform.action = "http://www.youdao.com/search";
break;
case "360":
findParam.name='q';
sform.action = "http://www.youdao.com/search";
break;
case "爱淘宝":
findParam.name='key';
sform.action = "http://ai.taobao.com/search/index.htm";
break;
case "亚马逊":
findParam.name='field-keywords';
sform.action = "http://www.amazon.cn/s/ref=nb_sb_noss";
break;
case "当当":
findParam.name='key';
sform.action = "http://search.dangdang.com/";
break;
case "知道":
findParam.name='word';
sform.action = "http://zhidao.baidu.com/search";
break;
case "维基":
findParam.name='search';
sform.action = "ttp://zh.wikipedia.org/w/index.php";
break;
case "Crea":
findParam.name='q';
sform.action = "http://search.creativecommons.org/";
break;
case "糯米汇":
findParam.name='s';
sform.action = "http://www.nuomihui.com/";
break;
}
selectul.style.overflow = "hidden";
};
};
};

下一篇:关于坛友的一个布局问题的解答

百家搜索:在站点中加入Google、百度等搜索引擎的更多相关文章

  1. 百家搜索:在网站中添加Google、百度等搜索引擎

    来源:http://www.ido321.com/1143.html 看到一些网站上添加了各种搜索引擎.如Google.百度.360.有道等,就有点好奇,这个怎么实现?研究了一各个搜索引擎怎么传送关键 ...

  2. 熊掌号:"搜索+信息流"双引擎与"百家号+熊掌号"双品牌内容平台

    一. 熊掌号是什么?熊掌号简单来说,就是"搜索 + 信息流"双引擎与"百家号 + 熊掌号"双品牌内容平台,上线了,对站长还是企业,都是一件好事.只要写出优质的原 ...

  3. 在Android应用中实现Google搜索的例子

    有一个很简单的方法在你的 Android 应用中实现 Google 搜索.在这个例子中,我们将接受用户的输入作为搜索词,我们将使用到 Intent.ACTION_WEB_SEARCH . Google ...

  4. Linux下使用 github+hexo 搭建个人博客07-next主题接入搜索和站点管理

    这是搭建个人博客系统系列文章的最后一篇,如果你是从第一篇一路跟下来的,那么恭喜你,即将完成整个博客网站的搭建.OK,话不多说,开始我们的收官之战. 不知你想过没有,如果我们的文章少,一眼看完整个目录, ...

  5. 【python爬虫】一个简单的爬取百家号文章的小爬虫

    需求 用"老龄智能"在百度百家号中搜索文章,爬取文章内容和相关信息. 观察网页 红色框框的地方可以选择资讯来源,我这里选择的是百家号,因为百家号聚合了来自多个平台的新闻报道.首先看 ...

  6. SEO 在 SPA 站点中的实践

    背景 观察基于 create-react-doc 搭建的文档站点, 发现网页代码光秃秃的一片(见下图).这显然是单页应用 (SPA) 站点的通病 -- 不利于文档被搜索引擎搜索 (SEO). 难道 S ...

  7. 在浏览器中输入Google.com并且按下回车之后发生了什么(转载)

    原文地址:https://github.com/skyline75489/what-happens-when-zh_CN#id9 本文试图回答一个古老的面试问题:当你在浏览器中输入google.com ...

  8. 在浏览器中输入Google.com并且按下回车之后发生了什么?

    作者: skyline75489  来源: skyline75489的博客  发布时间: 2015-03-26 16:57  阅读: 4163 次  推荐: 23   原文链接   [收藏]      ...

  9. K2百家讲坛 | 越秀地产:K2为房企数字化转型带来更多可能

    随着数字化经济时代的到来,房地产行业逐渐形成了新的竞争和市场格局,房企要在此背景下实现稳步发展,需要由原本的粗放式管理逐渐向集团性管理.精细化管控转变,这对房企的经营发展战略和业务管理方式都提出了不小 ...

随机推荐

  1. Ajv JSON数据格式校验 使用

    1.官网 https://ajv.js.org/ 2.示例代码 <!DOCTYPE html> <html lang="zh"> <head> ...

  2. cordova添加Splash

    最新版本的cordova添加Splash只需要改写config.xml 官方文档地址为:http://cordova.apache.org/docs/en/4.0.0/config_ref_image ...

  3. jQuery常用方法一览及JQuery选择器获取表格中按钮所在行的其他列值

    Attribute: $(”p”).addClass(css中定义的样式类型); 给某个元素添加样式$(”img”).attr({src:”test.jpg”,alt:”test Image”}); ...

  4. linux实现ssh免密码登录

    linux实现ssh免密码登录 本地系统执行 ssh-keygen -t rsa 命令,生成密钥文件 在相应的目录下查看生成的密钥文件,其中:id_rsa为私钥文件,id_rsa.pub为公钥文件 本 ...

  5. MySQL错误代码大全(史上最全)

    用任何主机语言调用MySQL时可能出现的错误.首先,列出了服务器错误消息.其次列出了客户端程序消息. B.1. 服务器错误代码和消息  服务器错误信息来自下述源文件: · 错误消息信息列在share/ ...

  6. COM方式实现C++调用C#代码的一些总结

    首先这个测试没成功,只在本机上可行,在不同机器上测试失败.可能是GUID不对或者没注册成功. 既然已经花了一上午时间去研究,还是总结一下 1.网上说要创建一个snk证书,但不创建也可以.只不过不能放入 ...

  7. atitit.设计文档---操作日志的实现

    atitit.设计文档---操作日志的实现 日志查询 1 ----mybatis  配置... 1 添加日志 1 日志查询 <a class="l-link" href=&q ...

  8. CYQ多数据库链接

     枚举名XXXEnum  对应XXXConn的配置数据库链接项 ,不多说,一看就明白!名字空间得要带上数据库名!

  9. Spring学习9-MyEclipse中Spring工程使用@Resource注释的问题

    在MyEclipse 的Spring工程中,有时候要使用@Resource注释来驱动Spring配置.但是在MyEclipse添加Spring开发能力的操作中,并没有 把相关的库添加到工程的class ...

  10. Makefile 12——改善编译效率

    从Makefile的角度看,一个可以改善编译效率的地方与其中的隐式规则有关.为了了解make的隐式规则,我们把之前的simple项目的Makefile做一点更改,删除生成.o文件的规则(与隐式规则相对 ...