全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

jQuery实现的仿百度,仿谷歌搜索下拉框效果示例

本文实例讲述了jQuery实现的仿百度,仿谷歌搜索下拉框效果。分享给大家供大家参考,具体如下:

运行效果图如下:

完整实例代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
<head>
<title>仿百度搜索下拉框,放搜索下拉框,仿谷歌搜索下拉框</title>
<META content="仿谷歌百度搜索下来内容显示,可以通过ajax下拉也可以调用数据库数据,目前只是按照js调用了点内容,参考下面代码进行自行修改" name="Description">
<META content="谷歌,百度,下拉框,仿搜索下拉,下拉框搜索,搜索下拉内容" name="keywords">
<style type="text/css">
body{
  font-size:14px;}
</style>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<script src="jquery-1.7.2.min.js"></script>
<script language="javascript">
<!--
///开始定义全局内容
var fouce_li_num = -1;///默认没有选择任何下拉内容
var width_ = 300;//这里设置的是搜索框的宽度,目的为了与下面的列表宽度相同
var li_color = "#fff";//默认的下拉背景颜色
var li_color_ = "#CCC";//当下拉选项获取焦点后背景颜色
$(function(){
 $("input[name=key]").keyup(function(event){
  var keycode = event.keyCode;
  if(delkeycode(keycode))return;
  var key_ = $(this).val();//获取搜索值
  var top_ = $(this).offset().top;//获搜索框的顶部位移
  var left_ = $(this).offset().left;//获取搜索框的左边位移
  if(keycode==13){//enter search
    if(fouce_li_num>=0){
    $(this).val($.trim($("#foraspcn >li:eq("+fouce_li_num+")").text()));
    fouce_li_num=-1;
    }else{
      /////当没有选中下拉表内容时 则提交form 这里可以自定义提交你的搜索
    }
    $("#foraspcn").hide();
   }else if(keycode==40){//单击键盘向下按键
    fouce_li_num++;
    var li_allnum = $("#foraspcn >li").css("background-color",li_color).size();
    if(fouce_li_num>=li_allnum&&li_allnum!=0){//当下拉选择不为空时
    fouce_li_num=0;
    }else if(li_allnum==0){fouce_li_num--;return;}
    $("#foraspcn >li:eq("+fouce_li_num+")").css("background-color",li_color_);
   }else if(keycode==38){//点击键盘向上按键
    fouce_li_num--;
    var li_allnum = $("#foraspcn >li").css("background-color",li_color).size();
    if(fouce_li_num<0&&li_allnum!=0){//当下拉选择不为空时
    fouce_li_num=li_allnum-1;
    }else if(li_allnum==0){fouce_li_num++;return;}
    $("#foraspcn >li:eq("+fouce_li_num+")").css("background-color",li_color_);
   }else{//进行数据查询,显示查询结果
    fouce_li_num=-1;
    $("#foraspcn").empty();
    ///ajax调用 这里使用的是 测试内容
    ajax_demo();
    //ajax_getdata(key_);//如果使用ajax去前面的demo和//
    //赋值完毕后进行显示
    $("#foraspcn").show().css({"top":top_+22,"left":left_});
   }
  });
  //当焦点从搜索框内离开则,隐藏层
  $("body").click(function(){ $("#foraspcn").hide(); });
  ///创建隐藏的div,用来显示搜索下的内容
  $("body").append("<div id='foraspcn'></div>");
  $("#foraspcn").css({"width":""+width_+"px","position":"absolute","z-index":"999","list-style":"none","border":"solid #E4E4E4 1px","display":"none"});//这里设置列下拉层的样式,默认为隐藏的
});
//定义非开始运行函数
function delkeycode(keycode){//去除了不必要的按键反应,当比如删除,f1 f2等按键时,则返回
 var array = new Array();
 array =[8,16,19,20,27,33,34,35,36,45,46,91,112,113,114,115,116,117,118,119,120,121,122,123,145,192];
 for(i=0;i<array.length;i++){
   if(keycode==array[i]){return true;break;}
   }
  return false;
}
//这是一个测试案例
function ajax_demo(){
  var data_array = ["网站制作学习网","网站制作","www."];
  for(i=0;i<data_array.length;i++){//这里进行数据附加 返回数据格式为 关键词数组
    $("#foraspcn").append("<li style='width:"+width_+"px;'>"+data_array[i]+"</li>");
     }
  $("#foraspcn >li").mouseover(function(){$(this).css("background-color",li_color_);});
  $("#foraspcn >li").mouseout(function(){$(this).css("background-color",li_color);});
  $("#foraspcn >li").click(function(){$("input[name=key]").val($.trim($(this).text()));$(this).parent().hide();});
}
////////////////这里是正式的ajax调用
function ajax_getdata(key){
 $.post(
   "ajax_tag_search.php",
  {"key":key},//ajax 的post不能提交中文提交,在动作页面进行获取后需要解码,注意字符格式,然后搜索后返回
  function(data){//返回格式是json数据,至少是个数组也可自定义,然后再这里进行操作
    data_array = eval("("+data+")");
    for(i=0;i<data_array.length;i++)//这里进行数据附加 返回数据格式为 关键词数组
    $("#foraspcn").append("<li style='width:"+width_+"px;'>"+data_array[i]+"</li>");
    $("#foraspcn >li").mouseover(function(){$(this).css("background-color",li_color_);});
    $("#foraspcn >li").mouseout(function(){$(this).css("background-color",li_color);});
    $("#foraspcn >li").click(function(){$("input[name=key]").val($.trim($(this).text()));$(this).parent().hide();});
   }
  );
}
-->
</script>
<body>
仿百度百度搜索下拉<input type="text" name="key" size="40" maxlength="40">
</body>
</html>

更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery表格(table)操作技巧汇总》、《jQuery切换特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常用插件及用法总结》、《jQuery拖拽特效与技巧总结》、《jquery中Ajax用法总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》及《jquery选择器用法总结》

希望本文所述对大家jQuery程序设计有所帮助。


# jQuery  # 仿百度  # 仿谷歌  # 搜索  # 下拉框  # jQuery实现搜索页面关键字的功能  # Jquery Easyui搜索框组件SearchBox使用详解(19)  # jQuery学习笔记——jqGrid的使用记录(实现分页、搜索功能)  # 基于jQuery实现页面搜索功能  # Jquery插件仿百度搜索关键字自动匹配功能  # jquery zTree异步加载、模糊搜索简单实例分享  # 基于jquery实现的类似百度搜索的输入框自动完成功能  # 基于jquery的仿百度搜索框效果代码  # 利用jQuery实现可输入搜索文字的下拉框  # jquery实现静态搜索功能(可输入搜索文字)  # 关键词  # 的是  # 百度搜索  # 自定义  # 网站制作  # 为空  # 格式为  # 是个  # 相关内容  # 也可  # 感兴趣  # 这是一个  # 可以通过  # 给大家  # 然后再  # 更多关于  # 所述  # 查询结果  # 程序设计 


相关文章: 网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?  建站之星收费标准详解:套餐费用及年费价格表一览  香港服务器网站推广:SEO优化与外贸独立站搭建策略  利用JavaScript实现拖拽改变元素大小  广东专业制作网站有哪些,广东省能源集团有限公司官网?  巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成  视频网站制作教程,怎么样制作优酷网的小视频?  Java解压缩zip - 解压缩多个文件或文件夹实例  jQuery 常见小例汇总  重庆市网站制作公司,重庆招聘网站哪个好?  网站建设设计制作营销公司南阳,如何策划设计和建设网站?  武清网站制作公司,天津武清个人营业执照注销查询系统网站?  公司网站建设制作费用,想建设一个属于自己的企业网站,该如何去做?  如何通过NAT技术实现内网高效建站?  如何优化Golang Web性能_Golang HTTP服务器性能提升方法  如何基于云服务器快速搭建网站及云盘系统?  为什么Go需要go mod文件_Go go mod文件作用说明  如何获取免费开源的自助建站系统源码?  如何在建站之星绑定自定义域名?  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  如何零成本快速生成个人自助网站?  小捣蛋自助建站系统:数据分析与安全设置双核驱动网站优化  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  无锡营销型网站制作公司,无锡网选车牌流程?  公司网站设计制作厂家,怎么创建自己的一个网站?  如何快速搭建虚拟主机网站?新手必看指南  电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?  东莞专业制作网站的公司,东莞大学生网的网址是什么?  如何将凡科建站内容保存为本地文件?  如何撰写建站申请书?关键要点有哪些?  如何高效搭建专业期货交易平台网站?  我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?  青岛网站建设如何选择本地服务器?  开源网站制作软件,开源网站什么意思?  无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?  网站专业制作公司有哪些,做一个公司网站要多少钱?  网站制作费用多少钱,一个网站的运营,需要哪些费用?  深圳网站制作案例,网页的相关名词有哪些?  济南网站制作的价格,历城一职专官方网站?  如何基于云服务器快速搭建个人网站?  如何在IIS中新建站点并配置端口与IP地址?  武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊?  如何用西部建站助手快速创建专业网站?  山东云建站价格为何差异显著?  如何选择建站程序?包含哪些必备功能与类型?  Swift中循环语句中的转移语句 break 和 continue  品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?  实现点击下箭头变上箭头来回切换的两种方法【推荐】  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  宝塔建站后网页无法访问如何解决? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。