jquery.ui.자동complete 중국어 입력이 자동으로 이루어지지 않는 해결
6137 단어 autocomplete
.bind( "keydown.autocomplete", function( event ) {
if ( self.options.disabled || self.element.propAttr( "readOnly" ) ) {
return;
}
suppressKeyPress = false;
var keyCode = $.ui.keyCode;
switch( event.keyCode ) {
case keyCode.PAGE_UP:
self._move( "previousPage", event );
break;
case keyCode.PAGE_DOWN:
self._move( "nextPage", event );
break;
case keyCode.UP:
self._move( "previous", event );
// prevent moving cursor to beginning of text field in some browsers
event.preventDefault();
break;
case keyCode.DOWN:
self._move( "next", event );
// prevent moving cursor to end of text field in some browsers
event.preventDefault();
break;
case keyCode.ENTER:
case keyCode.NUMPAD_ENTER:
// when menu is open and has focus
if ( self.menu.active ) {
// #6055 - Opera still allows the keypress to occur
// which causes forms to submit
suppressKeyPress = true;
event.preventDefault();
}
//passthrough - ENTER and TAB both select the current element
case keyCode.TAB:
if ( !self.menu.active ) {
return;
}
self.menu.select( event );
break;
case keyCode.ESCAPE:
self.element.val( self.term );
self.close( event );
break;
default:
// keypress is triggered before the input value is changed
clearTimeout( self.searching );
self.searching = setTimeout(function() {
// only search if the value has changed
if ( self.term != self.element.val() ) {
self.selectedItem = null;
self.search( null, event );
}
}, self.options.delay );
break;
}
})
enter,table 등 특수 키를 눌렀을 때 특수 처리를 하고 다른 경우 자동으로 검색하는 것을 볼 수 있습니다.중국어를 입력할 때 브라우저의 커널이 다르기 때문에 터치와 백그라운드에 전달되는 값은 모두 같지 않다.실험을 통해 (default: 다음에 self.term과 self.element.val () 의 값을 innerHTML 방식으로 페이지에 정의된 탭에 기록합니다. 코드는 비교적 간단해서 쓰지 않습니다.)브라우저와 입력법과 관련이 있는 이상한 값이 나타나는 것을 발견할 수 있다.따라서 input 이벤트에 대한 감청을 고려할 수 있습니다. 구체적인 코드는 파일에 이벤트를 연결하는 곳에 연결을 추가합니다
.bind("input.autocomplete",function( event ){
if ( suppressKeyPress ) {
suppressKeyPress = false;
event.preventDefault();
}
clearTimeout( self.searching );
self.searching = setTimeout(function() {
if ( self.term != self.element.val() ) {
self.selectedItem = null;
self.search( null, event );
}
}, self.options.delay );
})
그 내용은 keydown의default 처리를 참조합니다.이렇게 하면 중국어 문제를 해결할 수 있다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
kintone 개발을 보다 효율적으로 하기 위해 ~Atom 패키지 개발~평상시는 대학에서 kintone 사용해 NPO 쪽의 업무 어플리케이션을 작성하게 하고 있습니다. 개인적으로 kintone 커스터마이즈나 플러그인의 작성 등도 조금 행하고 있습니다만, 가끔 kintone 용 API 스...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.