1
jQuery.autocomplete=function(e,t){function p(){f={}
2
;f.data={}
3
;f.length=0}
4
function b(){if(h==46||h>8&&h<32)return s.hide();var e=r.val();if(e==u)return;u=e;if(e.length>=t.minChars){r.addClass(t.loadingClass);M(e)}
5
else{r.removeClass(t.loadingClass);s.hide()}
6
}
7
function w(e){var t=$("li",i);if(!t)return;a+=e;if(a<0){a=0}
8
else if(a>=t.size()){a=t.size()-1}
9
t.removeClass("ac_over");$(t[a]).addClass("ac_over")}
10
function E(){var e=$("li.ac_over",i)[0];if(!e){var n=$("li",i);if(t.selectOnly){if(n.length==1)e=n[0]}
11
else if(t.selectFirst){e=n[0]}
12
}
13
if(e){S(e);return true}
14
else{return false}
15
}
16
function S(n){if(!n){n=document.createElement("li");n.extra=[];n.selectValue=""}
17
var i=$.trim(n.selectValue?n.selectValue:n.innerHTML);e.lastSelected=i;u=i;s.html("");r.val(i);k();if(t.onItemSelect)setTimeout(function(){t.onItemSelect(n)}
18
,1)}
19
function x(e,t){var n=r.get(0);if(n.createTextRange){var i=n.createTextRange();i.collapse(true);i.moveStart("character",e);i.moveEnd("character",t);i.select()}
20
else if(n.setSelectionRange){n.setSelectionRange(e,t)}
21
else{if(n.selectionStart){n.selectionStart=e;n.selectionEnd=t}
22
}
23
n.focus()}
24
function T(e){if(h!=8){r.val(r.val()+e.substring(u.length));x(u.length,e.length)}
25
}
26
function N(){var n=j(e);var i=t.width>0?t.width:r.width();s.css({width:parseInt(i)+"px",top:n.y+e.offsetHeight+"px",left:n.x+"px"}
27
).show()}
28
function C(){if(o)clearTimeout(o);o=setTimeout(k,200)}
29
function k(){if(o)clearTimeout(o);r.removeClass(t.loadingClass);if(s.is(":visible")){s.hide()}
30
if(t.mustMatch){var n=r.val();if(n!=e.lastSelected){S(null)}
31
}
32
}
33
function L(e,n){if(n){r.removeClass(t.loadingClass);i.innerHTML="";if(!c||n.length==0)return k();if($.browser.msie){s.append(document.createElement("iframe"))}
34
i.appendChild(O(n));if(t.autoFill&&r.val().toLowerCase()==e.toLowerCase())T(n[0][0]);N()}
35
else{k()}
36
}
37
function A(e){if(!e)return null;var n=[];var r=e.split(t.lineSeparator);for(var i=0;i<r.length;i++){var s=$.trim(r[i]);if(s){n[n.length]=s.split(t.cellSeparator)}
38
}
39
return n}
40
function O(e){var n=document.createElement("ul");var r=e.length;if(t.maxItemsToShow>0&&t.maxItemsToShow<r)r=t.maxItemsToShow;for(var i=0;i<r;i++){var s=e[i];if(!s)continue;var o=document.createElement("li");if(t.formatItem){o.innerHTML=t.formatItem(s,i,r);o.selectValue=s[0]}
...
</html>