|
101 | 101 | if(self.isSreachIndexOF(arr[i].n,self.query)
|
102 | 102 | || self.isSreachIndexOF(arr[i].d,self.query)
|
103 | 103 | ){
|
104 |
| - if(count<show_list_count){ |
| 104 | + if(count < show_list_count){ |
105 | 105 | arrResultHTML.push(self.createKeyworldsHTML(arr[i],self.query,islist));
|
106 | 106 | ++count;
|
107 | 107 | }
|
|
122 | 122 | elm.appendChild(myLi);
|
123 | 123 | }
|
124 | 124 | },
|
| 125 | + // 选中搜索结果效果 |
| 126 | + selectedResult:function(type){ |
| 127 | + var items = this.elm_result.children; |
| 128 | + var index = 0; |
| 129 | + for(var i=0;i < items.length;i++){ |
| 130 | + if(items[i].className == 'ok'){ |
| 131 | + items[i].className = ''; |
| 132 | + if(type == 'up') index = i-1; |
| 133 | + else index = i+1; |
| 134 | + break; |
| 135 | + }; |
| 136 | + }; |
| 137 | + if(items[index]) items[index].className = 'ok'; |
| 138 | + }, |
| 139 | + // 是否选中搜索结果 |
| 140 | + isSelectedResult:function(){ |
| 141 | + var items = this.elm_result.children; |
| 142 | + var isSel = false; |
| 143 | + for(var i=0;i < items.length;i++){ |
| 144 | + if(items[i].className == 'ok'){ |
| 145 | + isSel = items[i]; |
| 146 | + break; |
| 147 | + }; |
| 148 | + }; |
| 149 | + return isSel; |
| 150 | + }, |
125 | 151 | init:function(){
|
126 | 152 | var self = this;
|
127 | 153 | var kw = self.getQueryString('kw');
|
|
163 | 189 | // 输入Enter键
|
164 | 190 | this.bindEvent(document,'keyup',function(e){
|
165 | 191 | if(e.key =='Enter'){
|
166 |
| - self.elm_btn.click(); |
| 192 | + var item = self.isSelectedResult(); |
| 193 | + if(!item) return self.elm_btn.click(); |
| 194 | + if(item.children[0]) { |
| 195 | + item.children[0].click(); |
| 196 | + } |
| 197 | + }else if(e.keyCode === 40){ |
| 198 | + // ArrowDown |
| 199 | + self.selectedResult() |
| 200 | + }else if(e.keyCode === 38){ |
| 201 | + // ArrowUp |
| 202 | + self.selectedResult("up"); |
167 | 203 | }
|
168 | 204 | })
|
169 | 205 |
|
|
0 commit comments