仿淘宝JSsearch搜索下拉深度用法


Posted in Javascript onJanuary 15, 2018

我们首先给出本次关于JSsearch程序的相关源码:https://gitee.com/skyogo/JSsearch

我们下载JSsearch1.0 Community版本

下载好了之后我们再下载一个类似淘宝的购物页面

然后,我们打开这个页面,会发现是这样的

仿淘宝JSsearch搜索下拉深度用法

此时我们关掉页面,将我们的JSsearch.js拷贝一份到淘宝页面的根目录的js文件夹下面

拷贝完了之后,我们在html页面中引入它(在body最底部写)

<script src="js/JSsearch.js"></script>
<script>
</script>

然后我们在上面的第76行(input标记下面)里写上这段代码

<div id="search-recommend">
 没有搜索结果
</div>

然后我们打开css/index.css文件,在里面写上这段css样式表

#search-recommend{
  height: 40px;
  width: 580px;
  position: absolute;
  top: 110px;
  border: 1px gray solid;
  padding-left: 20px;
  box-sizing: border-box;
  padding-top: 11px;
  font-size: 15px;
  cursor: pointer;
  background: white;
}

运行一下html页面,发现搜索框下面多出了一个框

仿淘宝JSsearch搜索下拉深度用法

至此,我们的html和css代码就写完了,接下来,我们来写js代码

我们现在将页面关闭,打开开发工具,在index.html里面找到大约是2754行的<script>标签,那么我们现在就要在里面写入我们的查询代码

首先,我们写入这段代码:(重复获取输入框里面的值)

var lastValue = document.getElementById("search-in").value;
setInterval(function(){   
},10)

然后,我们在var的下面写入判断语句,判断是否输入框的值改变了

if(lastValue != document.getElementById("search-in").value){          
}

接着,我们在if里面写入:

lastValue = document.getElementById("search-in").value;

这段话,就是说重复判断,如果输入框的值改变了,那么就重新赋值

然后,我们再在下面写入:

if(lastValue==null||lastValue==""){
  document.getElementById("search-recommend").innerHTML = "没有搜索结果";
}else{
}

这段话,就是判断如果输入框现在的值为空,那么就让他显示“没有搜索结果”

接着,我们在else里面写入:

var newItemList = JSsearchByKeyWord(itemList,lastValue);
if(newItemList[0] == undefined){
   document.getElementById("search-recommend").innerHTML = "没有搜索结果";
}else{ 
}

这时,我们就调用了JSsearch的用关键词查找的方法,哦,对了,我们还没写itemList这个数组

这时把光标移到setInterval的上面一行,写上:

var itemList = ["光能表","情侣表","日韩腕表","手表放心淘","瑞士表","陶瓷表","电子表","欧米茄","钢带表","皮带表","镂空机械表","斯沃琪","天梭","运动表","卡西欧","国表","时尚表","女表","儿童表","学生表","浪琴"];

itemList是我们所有的商品合集

现在再把光标移回去,移到else里面,写上:

document.getElementById("search-recommend").innerHTML = newItemList[0];

此时,我们再打开html文件,再输入框里面输入内容,就会发现已经有联想了!

仿淘宝JSsearch搜索下拉深度用法

当然,这还只是个雏形,我们还有一个BUG需要解决,就是当你输入一个多个字符串都含有的字符后,他并不一定推荐你想的那个,这点JSsearch已经帮我们想好了,我在这里就不再写了,如果想解决这个BUG,可以参考JSsearch的说明文档自行解决!

Javascript 相关文章推荐
JQuery实现自定义对话框的代码
Jun 15 Javascript
imgAreaSelect 中文文档帮助说明
Oct 08 Javascript
简介JavaScript中strike()方法的使用
Jun 08 Javascript
JS鼠标拖拽实例分析
Nov 23 Javascript
JS函数定义方式的区别介绍
Mar 22 Javascript
DOM中事件处理概览与原理的全面解析
Aug 16 Javascript
EasyUI学习之Combobox级联下拉列表(2)
Dec 29 Javascript
JS实现页面内跳转的简单代码
Sep 03 Javascript
微信开发之企业付款到银行卡接口开发的示例代码
Sep 18 Javascript
js中let能否完全替代IIFE
Jun 15 Javascript
vue flex 布局实现div均分自动换行的示例代码
Aug 05 Javascript
JS 基本概念详细介绍
Oct 16 Javascript
vue2.0 父组件给子组件传递数据的方法
Jan 15 #Javascript
深入理解requireJS-实现一个简单的模块加载器
Jan 15 #Javascript
vue2.0 如何把子组件的数据传给父组件(推荐)
Jan 15 #Javascript
利用Angular2 + Ionic3开发IOS应用实例教程
Jan 15 #Javascript
js实现一个简单的MVVM框架示例
Jan 15 #Javascript
详解angularjs 学习之 scope作用域
Jan 15 #Javascript
高性能的javascript之加载顺序与执行原理篇
Jan 14 #Javascript
You might like
PHP curl模拟浏览器采集阿里巴巴的实现代码
2011/04/20 PHP
如何使用PHP批量去除文件UTF8 BOM信息
2013/08/05 PHP
php post换行的方法
2020/02/03 PHP
jquery api参考 visualjquery 中国线路 速度快
2007/11/30 Javascript
jQuery获取地址栏参数插件(模仿C#)
2010/10/26 Javascript
JavaScript异步编程Promise模式的6个特性
2014/04/03 Javascript
jQuery表格排序组件-tablesorter使用示例
2014/05/26 Javascript
node.js中使用node-schedule实现定时任务实例
2014/06/03 Javascript
JavaScript设计模式之代理模式介绍
2014/12/28 Javascript
JavaScript的jQuery库中ready方法的学习教程
2015/08/14 Javascript
jquery仅用6行代码实现滑动门效果
2015/09/07 Javascript
Javascript数组中push方法用法分析
2016/10/31 Javascript
纯js模仿windows系统日历
2017/02/04 Javascript
JavaScript 中使用 Generator的方法
2017/12/29 Javascript
Angularjs实现多图片上传预览功能
2018/07/18 Javascript
Vue.js子组件向父组件通信的方法实例代码详解
2018/12/10 Javascript
Vue实现搜索结果高亮显示关键字
2019/05/28 Javascript
深入浅析vue中cross-env的使用
2019/09/12 Javascript
利用python代码写的12306订票代码
2015/12/20 Python
在Python中移动目录结构的方法
2016/01/31 Python
Python 通过URL打开图片实例详解
2017/06/01 Python
Python爬虫实现模拟点击动态页面
2020/03/05 Python
Django中的模型类设计及展示示例详解
2020/05/29 Python
Java ExcutorService优雅关闭方式解析
2020/05/30 Python
浅谈Python里面None True False之间的区别
2020/07/09 Python
python 图像增强算法实现详解
2021/01/24 Python
Allen Edmonds官方网站:一家美国优质男士鞋类及配饰制造商
2019/03/12 全球购物
Tuckernuck官网:经典的美国品质服装、鞋子和配饰
2021/01/11 全球购物
工作中个人的自我评价
2013/12/31 职场文书
大学生自我鉴定范文模板
2014/01/21 职场文书
班级旅游计划书
2014/05/03 职场文书
文明礼仪演讲稿
2014/05/12 职场文书
学校法制宣传月活动总结
2014/07/03 职场文书
小学安全汇报材料
2014/08/14 职场文书
大学生党性分析材料
2014/12/19 职场文书
故意伤害罪辩护词
2015/05/21 职场文书