js模擬百度模糊搜索的實例
更新時間:2017年08月04日 08:09:20 投稿:jingxian
下面小編就為大家?guī)硪黄猨s模擬百度模糊搜索的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
廢話不多說,直接上代碼
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> *{ margin:0; padding:0; } input{ display:block; list-style:none; } html,body{ color:#000; font-size:14px; font-family:'微軟雅黑'; } .box{ margin:50px auto; width:300px; } .box input{ padding:0 10px; width:278px; height:30px; border:1px solid green; } .box ul{ display:none; border:1px solid green; border-top:none; } .box ul li{ list-style:none; padding:0 10px; height:30px; line-height:30px; cursor:pointer; } .box ul li:hover{ background:#eee; } </style> </head> <body> <div class='box'> <input type="text" id='searchInp'/> <ul id='searchBox'> <li>1111</li> <li>2222</li> <li>3333</li> <li>4444</li> </ul> </div> <script src='jquery.min.js'></script> <script> var searchModule = (function(){ var $searchInp = $('#searchInp'), $searchBox = $('#searchBox'); //向百度的服務(wù)器發(fā)送JSONP請求,把數(shù)據(jù)綁定到容器當(dāng)中 function bindHTML(){ var searchKey = $searchInp.val(); function callback(data){ data = data['g']; var str = ''; $.each(data,function(index,item){ if(index<=3){ str += '<li>'+item+'</li>' } }) $searchBox.html(str).stop().slideDown(300); } $.ajax({ url:"https://sp0.baidu.com/5a1Fazu8AA54nxGKo9WTAnF6hhy/su?wd="+searchKey, dataType:"jsonp", jsonp:'cb', success:callback }) } //事件綁定和模塊的入口 function init(){ //文本框獲取焦點(diǎn)或者輸入內(nèi)容,判斷當(dāng)前文本框中是否有內(nèi)容,有內(nèi)容綁定數(shù)據(jù),沒有內(nèi)容隱藏展示框 $searchInp.on("focus keyup",function(){ var val = $(this).val(); if(val.length>0){ bindHTML(); return; } $searchBox.stop().slideUp(300); }).on('blur',function(){ window.setTimeout(function(){ $searchBox.stop().slideUp(300); },3000) }) //給展示框中的li綁定方法 $searchBox.on('click',function(e){ var tar = e.target, tarTag = tar.tagName.toUpperCase(), $tar = $(tar); if(tarTag==="LI"){ $searchInp.val($tar.html()); $(this).stop().slideUp(300); } }) } return { init:init } })() searchModule.init(); </script> </body> </html>
以上這篇js模擬百度模糊搜索的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
avascript中的自執(zhí)行匿名函數(shù)應(yīng)用示例
javascript中的自執(zhí)行匿名函數(shù)可以用它創(chuàng)建命名空間,只要把自己所有的代碼都寫在這個特殊的函數(shù)包裝內(nèi),那么外部就不能訪問,除非你允許2014-09-09微信頁面彈出鍵盤后iframe內(nèi)容變空白的解決方案
當(dāng)鍵盤彈出后,頁腳也被頂起來;而當(dāng)搜索完(要刷新整體頁面),鍵盤縮回后,iframe里 鍵盤當(dāng)住的地方變成白色。怎么解決這個問題呢?下面腳本之家小編給大家分享微信頁面彈出鍵盤后iframe內(nèi)容變空白的解決方案,一起看看吧2017-09-09javascript設(shè)計模式之module(模塊)模式
這篇文章主要為大家詳細(xì)介紹了javascript設(shè)計模式之module(模塊)模式 ,感興趣的小伙伴們可以參考一下2016-08-08H5如何實現(xiàn)喚起APP及調(diào)試bug解決
這篇文章主要為大家介紹了H5如何實現(xiàn)喚起APP及調(diào)試bug解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05JavaScript中立即執(zhí)行函數(shù)實例詳解
javascript和其他編程語言相比比較隨意,所以javascript代碼中充滿各種奇葩的寫法,有時霧里看花,當(dāng)然,能理解各型各色的寫法也是對javascript語言特性更進(jìn)一步的深入理解。這篇文章主要給大家介紹了關(guān)于JavaScript中立即執(zhí)行函數(shù)的相關(guān)資料,需要的朋友可以參考下。2017-11-11JS實現(xiàn)圖文并茂的tab選項卡效果示例【附demo源碼下載】
這篇文章主要介紹了JS實現(xiàn)圖文并茂的tab選項卡效果,涉及javascript響應(yīng)鼠標(biāo)事件動態(tài)修改頁面元素屬性的相關(guān)操作技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2016-09-09詳解Webpack + ES6 最新環(huán)境搭建與配置
這篇文章主要介紹了詳解Webpack + ES6 最新環(huán)境搭建與配置,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-06-06javascript面向?qū)ο蟪绦蛟O(shè)計(一)
這篇文章主要介紹了javascript面向?qū)ο蟪绦蛟O(shè)計,分享給大家一段代碼,注釋里講解的非常詳細(xì),有助于我們理解面向?qū)ο?,這里推薦給大家。2015-01-01