您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

JS仿百度自动下拉框模糊匹配提示

2026/1/15 16:41:40发布16次查看
实际项目中,我们可以把数据获取改成ajax动态获取,在 getcontent()中
<!doctype> <html> <head> <title>js/jquery实现类似百度搜索功能</title> <meta name="author" content="michael"> <meta name="keywords" content="js/jquery实现类似百度搜索功能"> <meta name="description" content="js/jquery实现类似百度搜索功能,可用键盘控制"> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> <style type="text/css"> #container { position: absolute; left: 50%; top: 40%; } #content { float: left; position: relative; right: 50%; } input { border: 0; width: 288px; height: 30px; font-size: 16px; padding: 0 5px; line-height: 30px; } .item { padding: 3px 5px; cursor: pointer; } .addbg { background: #87a900; } .first { border: solid #87a900 2px; width: 300px; } #append { border: solid #87a900 2px; border-top: 0; display: none; } </style> </head> <body> <div id="container"> <div id="content"> <div class="first"> <input id="kw" onkeyup="getcontent(this);" /> </div> <div id="append"></div> </div> </div> <script type="text/javascript"> var data = [ "你好,我是michael", "你是谁", "你最好啦", "你最珍贵", "你是我最好的朋友", "你画我猜", "你是笨蛋", "你懂得", "你为我着迷", "你是我的眼" ]; $(document).ready(function() { $(document).keydown(function(e) { e = e || window.event; var keycode = e.which ? e.which : e.keycode; if (keycode == 38) { if (jquery.trim($("#append").html()) == "") { return; } moveprev(); } else if (keycode == 40) { if (jquery.trim($("#append").html()) == "") { return; } $("#kw").blur(); if ($(".item").hasclass("addbg")) { movenext(); } else { $(".item").removeclass('addbg').eq(0).addclass('addbg'); } } else if (keycode == 13) { dojob(); } }); var moveprev = function() { $("#kw").blur(); var index = $(".addbg").prevall().length; if (index == 0) { $(".item").removeclass('addbg').eq($(".item").length - 1).addclass('addbg'); } else { $(".item").removeclass('addbg').eq(index - 1).addclass('addbg'); } } var movenext = function() { var index = $(".addbg").prevall().length; if (index == $(".item").length - 1) { $(".item").removeclass('addbg').eq(0).addclass('addbg'); } else { $(".item").removeclass('addbg').eq(index + 1).addclass('addbg'); } } var dojob = function() { $("#kw").blur(); var value = $(".addbg").text(); $("#kw").val(value); $("#append").hide().html(""); } }); function getcontent(obj) { var kw = jquery.trim($(obj).val()); if (kw == "") { $("#append").hide().html(""); return false; } var html = ""; for (var i = 0; i < data.length; i++) { if (data[i].indexof(kw) >= 0) { html = html + "<div class='item' onmouseenter='getfocus(this)' onclick='getcon(this);'>" + data[i] + "</div>" } } if (html != "") { $("#append").show().html(html); } else { $("#append").hide().html(""); } } function getfocus(obj) { $(".item").removeclass("addbg"); $(obj).addclass("addbg"); } function getcon(obj) { var value = $(obj).text(); $("#kw").val(value); $("#append").hide().html(""); } </script> </body> </html>
以上所述是小编给大家介绍的js仿百度自动下拉框模糊匹配提示,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
更多js仿百度自动下拉框模糊匹配提示。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product