博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jq实现搜索引擎的提示效果
阅读量:4943 次
发布时间:2019-06-11

本文共 4419 字,大约阅读时间需要 14 分钟。

(function ($) {    $.fn.Search = function (options) {        var defaults = {            inputid: "search",            divid: "searchDiv",            callback: function (pageindex) {            }        };        var i = 0;        var opts = $.extend(defaults, options);                $("#" + opts.inputid).keyup(function (e) {            e = e || window.event;            if (e.keyCode != 40 && e.keyCode != 38 && e.keyCode != 13) {                if ($("#" + opts.inputid).val() == "") {                    $("#" + opts.divid).hide();                    i = 0;                } else {                    var value = $("#" + opts.inputid).val();                    $.ajax({                        //提交方式为Get                        type: "get",                        //访问的handler地址   参数d=" + new Date()是为了防止缓存是他每次访问的参数不同                        url: "/Common/SearchInfo",                        //设置提交的参数                        data: { name: value },                        //提交的方式是json提交                        dataType: "json",                        //如果成功则得到返回的结果然后用javascript库中的each方法遍历返回的json集合                        success: function (data) {                            //用each遍历json集合                            if (data != null) {                                var html = "";                                $.each(data, function (i, dataitem) {                                    html = html + "
" + dataitem.ComName.substring(0, value.length) + "
" + dataitem.ComName.substring(value.length, dataitem.ComName.length) + "
"; }); $("#" + opts.divid).html(html); $("#" + opts.divid).show(); } else { $("#" + opts.divid).html(""); $("#" + opts.divid).hide(); } }, //如果失败的话则弹出错误提醒 error: function (data) { $("#" + opts.divid).hide(); i = 0; } }); } } if (e.keyCode == 40) { var divs = $("#" + opts.divid).find("div"); if (divs.length == 1) { divs[0].style.backgroundColor = "#e8e3e3"; return; } if ($.trim(i) == $.trim(divs.length)) { divs[0].style.backgroundColor = "#e8e3e3"; $("#" + divs[0].id).siblings().css("backgroundColor", "white"); i = 0; } else { divs[i].style.backgroundColor = "#e8e3e3"; $("#" + divs[i].id).siblings().css("backgroundColor", "white"); } i = i + 1; } if (e.keyCode == 38) { var divs = $("#" + opts.divid).find("div"); if (i == 0) { i = divs.length; } if (divs.length == 1) { divs[0].style.backgroundColor = "#e8e3e3"; return; } if ($.trim(i) >= 0) { divs[i - 1].style.backgroundColor = "#e8e3e3"; $("#" + divs[i - 1].id).siblings().css("backgroundColor", "white"); } else { divs[i - 1].style.backgroundColor = "#e8e3e3"; $("#" + divs[i - 1].id).siblings().css("backgroundColor", "white"); i = 0; } i = i - 1; } if (e.keyCode == 13) { var divs = $("#" + opts.divid).find("div"); for (var j = 0; j < divs.length; j++) { if (divs[j].style.backgroundColor == "rgb(232, 227, 227)") { var span = $("#" + divs[j].id).find("span"); var spanText = span[0].innerText + span[1].innerText; $("#" + opts.inputid).val(spanText); $("#" + opts.divid).hide(); i = 0; } } } }); };})(jQuery);function getBlue(obj) { obj.style.backgroundColor = "#e8e3e3";}function getWhite(obj) { obj.style.backgroundColor = "white";}

  

转载于:https://www.cnblogs.com/liuchang/p/4514806.html

你可能感兴趣的文章
cookie和session赋值和读取
查看>>
正则表达式中的或与
查看>>
设计模式之策略模式
查看>>
hdu 1869 六度分离
查看>>
1066N !最右边非零数
查看>>
【linux音频应用】tinycap与arecord工具的使用
查看>>
手动编译一个c文件(Win7下如何使用GCC编译器)
查看>>
day 03 str, int ,bool,(str真的很重要)
查看>>
小波系数
查看>>
get和post的区别??
查看>>
Python 之 hello world
查看>>
转-成都-青城山
查看>>
解析LINUX的passwd文件(转)
查看>>
并发编程(一)线程基础,线程之间的共享协作
查看>>
迷宫问题思考
查看>>
JACOB调用控件函数
查看>>
软件测试学习第二天
查看>>
Shell入门
查看>>
Spring
查看>>
20161230实时量化监控,成效显著,实在忍不住要给大家秀一把
查看>>