BVB Source Codes

Seven VIP jubilee dance CMS management system Show script_autocomplete.js Source code

Return Download Seven VIP jubilee dance CMS management system: download script_autocomplete.js Source code - Download Seven VIP jubilee dance CMS management system Source code - Type:.js
  1. function sAutoComplete(objName, showID, ulID, valID, series, func) {
  2.         this.items = [];
  3.         this.showObj = $(showID);
  4.         this.ulObj = $(ulID);
  5.         this.valObj = $(valID);
  6.         if (!this.showObj) return;
  7.         this.obj = objName;
  8.         this.values = false;
  9.         this.sVal = null;
  10.         this.currently = -1;
  11.         this.series = isUndefined(series) ? 1 : series;
  12.         this.func = isUndefined(func) ? '': func;
  13.         this.showObj.childNodes[0].scrollTop = 0;
  14.         return this;
  15. };
  16.  
  17. sAutoComplete.prototype.addItem = function(items) {
  18.         if(items.indexOf(",") > 0) {
  19.                 var itemArr = items.split(",");
  20.                 for(var i = 0; i < itemArr.length; i++) {
  21.                         this.items.push(itemArr[i]);
  22.                 }
  23.         } else {
  24.                 this.items.push(items);
  25.         }
  26.         this.items.sort();
  27. };
  28. sAutoComplete.prototype.doClick = function(vObj) {
  29.         with(this) {
  30.                 if(typeof vObj == 'undefined') return false;
  31.                 var val = valObj.value;
  32.                 instance = eval(obj);
  33.                 if(!this.series) {
  34.                         valObj.value = vObj.val;
  35.                 }else if(values) {
  36.                         if(valObj.value.lastIndexOf(",") != valObj.value.length-1) {
  37.                                 valObj.value = valObj.value.substring(0, valObj.value.lastIndexOf(",")+1);
  38.                         }
  39.                         valObj.value += vObj.val + "";
  40.                 } else {
  41.                         instance.values = true;
  42.                         valObj.value = vObj.val + "";
  43.                 }
  44.                 if(this.func != '') {
  45.                         this.func();
  46.                 }
  47.                 valObj.focus();
  48.                 showObj.style.display = "none";
  49.         }
  50. };
  51. sAutoComplete.prototype.directionKeyDown = function(event) {
  52.         with(this) {
  53.                 var e = event.keyCode ? event.keyCode : event.which;
  54.                 var allChild = ulObj.childNodes.length;
  55.  
  56.                 if(e == 40) {
  57.                         if(currently+1 >= allChild) currently = allChild - 2;
  58.                         currently++
  59.                         if(currently != 0) showObj.childNodes[0].scrollTop += 16;
  60.                         ulObj.childNodes[currently].childNodes[0].style.cssText = "background: #2782D6; color: #FFF; text-decoration: none;";
  61.                 } else if(e == 38) {
  62.                         if(currently - 1 <= -1) currently = 1;
  63.                         currently--;
  64.                         showObj.childNodes[0].scrollTop -= 16;
  65.                         ulObj.childNodes[currently].childNodes[0].style.cssText = "background: #2782D6; color: #FFF; text-decoration: none;";
  66.                 } else if(e == 13) {
  67.                         instance = eval(obj);
  68.                         instance.doClick(ulObj.childNodes[currently]);
  69.                 }
  70.                
  71.         }
  72. };
  73. sAutoComplete.prototype.append = function(item, filtrate) {
  74.         with(this) {
  75.                 instance = eval(obj);
  76.                 var liObj = document.createElement("li");
  77.                 liObj.onclick = function(){instance.doClick(this)};
  78.                 liObj.val = item;
  79.                 if(filtrate) {
  80.                         var reg  = new RegExp("(" + sVal + ")","ig");
  81.                         if(sVal) liObj.innerHTML = '<a href="###">' + item.replace(reg , "<strong>$1</strong>") + '</a>';
  82.                 } else {
  83.                         liObj.innerHTML = '<a href="###">' + item + '</a>';
  84.                 }
  85.                 ulObj.appendChild(liObj);
  86.         }
  87. };
  88. sAutoComplete.prototype.handleEvent = function(searchVal, event) {
  89.         with(this) {
  90.                 var hidden = true;
  91.                 var allVal = 0;
  92.                 var strArr = new Array();
  93.                 var e = event.keyCode ? event.keyCode : event.which;
  94.                 ulObj.innerHTML = "";
  95.                 showObj.style.display = "block";
  96.                 instance = eval(obj);
  97.                 if(searchVal.indexOf(",") > 0) {
  98.                         strArr = searchVal.split(",");
  99.                         allVal = strArr.length;
  100.                         if(strArr[strArr.length-1] != "") {
  101.                                 searchVal = strArr[strArr.length-1];
  102.                         } else {
  103.                                 searchVal = "";
  104.                         }
  105.                 }
  106.                 if(searchVal != "") {
  107.                         searchVal = addslashes(searchVal);
  108.                         sVal = searchVal;
  109.                         var reg = new RegExp(searchVal, "ig");
  110.                         var itemstr = '';
  111.                         for(var i = 0; i < items.length; i++) {
  112.                                 var itemstr = items[i];
  113.                                 if(itemstr.match(reg)) {
  114.                                         instance.append(itemstr, 1);
  115.                                         hidden = false;
  116.                                 }
  117.                         }
  118.                 } else {
  119.                         for(var i = 0; i < items.length; i++) {
  120.                                 instance.append(items[i], 0);
  121.                                 hidden = false;
  122.                         }
  123.                         if(allVal == 0) instance.values = false;
  124.                 }
  125.                 if(hidden) {
  126.                         showObj.style.display = "none";
  127.                 } else if(e == 38 || e == 40 || e == 13) {
  128.                         instance.directionKeyDown(event);
  129.                 }
  130.         }
  131. };
  132. function addslashes(str) {
  133.         return preg_replace(['\\\\', '\\\'', '\\\/', '\\\(', '\\\)', '\\\[', '\\\]', '\\\{', '\\\}', '\\\^', '\\\$', '\\\?', '\\\.', '\\\*', '\\\+', '\\\|'], ['\\\\', '\\\'', '\\/', '\\(', '\\)', '\\[', '\\]', '\\{', '\\}', '\\^', '\\$', '\\?', '\\.', '\\*', '\\+', '\\|'], str);
  134. }
  135. function preg_replace(search, replace, str) {
  136.         var len = search.length;
  137.         for(var i = 0; i < len; i++) {
  138.                 re = new RegExp(search[i], "ig");
  139.                 str = str.replace(re, typeof replace == 'string' ? replace : (replace[i] ? replace[i] : replace[0]));
  140.         }
  141.         return str;
  142. }
  143.  
downloadscript_autocomplete.js Source code - Download Seven VIP jubilee dance CMS management system Source code
Related Source Codes/Software:
Jie Yang v0.6.3 article system - System functions: 1, the system settings A confi... 2016-09-21
Download IT mop stand (with site to download the database ACC) - Background management: http://www.xxx.com/admin/ad... 2016-09-21
Pcook CMS bubble guest v3.0 SDCMS version - Developed by Asp+Access, and meet the needs of sma... 2016-09-21
PeterCMS3 v3.2 - PeterCMS is the original sirenCMS and a series of ... 2016-09-21
Subdomain hosting edition v1.9 s taobao, pat - The background site admin 2016-09-21
126oo CMS film station system - This procedure ASP + ACC/ASP + SQL, using new kern... 2016-09-21
Copy the site source code v2.01 - It is ok to cover the folder % S 2016-09-21
ETsale simple product sales management system V3.0 formal version - ETsale3.0 is developed by PHP+MySQL+Smarty+jQuery ... 2016-09-21
Mobile - shop. Tk all source code - Admin admin.php no database. The total data Modi... 2016-09-22
CRYENGINE - CRYENGINE is a powerful real-time game development... 2017-06-11
postal - 2017-06-11
reactide - Reactide is the first dedicated IDE for React web ... 2017-06-11
rkt - rkt is a pod-native container engine for Linux. It... 2017-06-11
uWebSockets - Tiny WebSockets https://for... 2017-06-11
realworld - TodoMVC for the RealWorld - Exemplary fullstack Me... 2017-06-11
goreplay - GoReplay is an open-source tool for capturing and ... 2017-06-10
pyenv - Simple Python version management 2017-06-10
redux-saga - An alternative side effect model for Redux apps ... 2017-06-10
angular-starter - 2017-06-10

 Back to top