js 实现类似百度联想输入,自动补全功能
方案一:
search是搜索框id="search"
//点击页面隐藏自动补全提示框
document.onclick = function (e) {
var e = e ? e : window.event;
var tar = e.srcElement || e.target;
if (tar.id != search) {
if ($("#" + auto).is(":visible")) {
$("#" + auto).css("display", "none")
}
}
}
方案二:
me.tempIds=['aa','bb','cc'];
//绑定mousedowm事件,来移除智能提示框
$(document).bind('mousedown',function (event) {
var e = e ? e : window.event;
var tar = e.srcElement || e.target;
if (tar.id == null || $.inArray(tar.id, me.tempIds) == '-1') {
jo.find('.productType_hint').remove();
}
});
方案三:
使用jquery插件:
引入:
<style type="text/css" src="js/jquery.bigautocomplete.css"></style>
<script src="js/jquery-1.8.2.js" type="text/javascript"></script>
<script src="js/jquery.bigautocomplete.js" type="text/javascript"></script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta charset="utf-8">
<style type="text/css" src="js/jquery.bigautocomplete.css"></style>
<script src="js/jquery-1.8.2.js" type="text/javascript"></script>
<script src="js/jquery.bigautocomplete.js" type="text/javascript"></script>
<style type="text/css"> </style>
<script type="text/javascript">
$(function(){ $("#test").bigAutocomplete({
width:300,
data:[{title:"中国好声音",result:{ff:"qq"}},
{title:"中国移动网上营业厅"},
{title:"中国银行"},
{title:"中国移动"},
{title:"中国好声音第三期"},
{title:"中国好声音 第一期"},
{title:"中国电信网上营业厅"},
{title:"中国工商银行"},
{title:"中国好声音第二期"},
{title:"中国地图"}],
callback:function(data){
// alert(data.title);
}
}); })
</script>
</head>
<body>
<div>
<input id="test" type="text" value="" class="text"/>
</div>
</body>
</html>
方案五:
如果html结构简单,只需找到最外层div,然后触发click事件;
没有做不到,只有想不到。
-----zlp