> 웹 프론트엔드 > JS 튜토리얼 > JS 제어 자동 완성 0.11 데모 및 다운로드 1월 5일 업데이트_javascript 기술

JS 제어 자동 완성 0.11 데모 및 다운로드 1월 5일 업데이트_javascript 기술

WBOY
풀어 주다: 2016-05-16 19:21:47
원래의
1199명이 탐색했습니다.

1월 5일 업데이트

자동완성 텍스트 상자의 포커스가 사라지고 자동완성 컨테이너가 사라지지 않는 버그 수정
expandAllItem 메서드 추가, 더블클릭 시 모든 항목 표시 가능 , 자세한 내용은 예시를 참조하세요
CSS로 자동 완성 컨트롤을 아름답게 만드는 방법을 보여주는 customStyle 예시가 추가되었습니다. 데모 및 다운로드는 autocomplete_custom CSS 파일

을 참조하세요.
http:/ /www.never-online.net/code /neverModules/autocomplete/

이전 버전에 비해 기능 개선 및 기능:
1. 매칭 속도가 향상되었습니다.
2. ignoreCase 속성을 추가합니다(false인 경우 대소문자를 구분하며 기본값은 true입니다)
3. ignoreWhere 속성을 추가합니다(true인 경우 일치 결과는 그리디 일치를 사용합니다. 즉, 전체 문자열에 입력 문자가 있는 한 dataSource 콘텐츠가 일치 결과로 전송됩니다)
4. 돌아가려면 esc를 누르세요.
5. IE6.0, Opera9.0, Mozilla Firefox1.5
6과 호환됩니다. DataSource 데이터는 수동으로 삭제되거나 dataSource에 동적으로 할당될 수 있습니다. AJAX를 편리하게 수행하세요. 자세한 내용은 예제를 참조하세요.
7. 강조된 속성(기본값은 true이며, 데이터 양이 많을 경우 false로 설정하는 것이 좋습니다).
8. IE에서는 선택 컨트롤에 의해 div가 가려지는 것을 보완합니다. 자세한 내용은 첫 번째 예를 참조하세요.
9. 화살표 키가 지원됩니다.

아이디어 및 참조:

초기화 중에 Join("")을 사용하여 모든 데이터에 대한 dataSource 문자열을 한 번에 생성합니다(문자열 단어에 사용하는 HTML은 최대한 짧습니다. 가장 작은 문자열로 데이터를 생성하려면 이를 활성화한 다음 정규식을 사용하여 일치시킵니다. 속도면에서는 이미 매우 빠른 것 같습니다.

아직 범위 기능은 추가되지 않았지만 기본 기능이면 충분합니다. 속도는 꽤 괜찮습니다. 이제 속도 문제를 발견했습니다. Opera, Mozilla 및 IE에서 커널의 효율성을 최대한 활용하려는 경우 결과적으로 코드가 크게 길어질 수 있습니다. 결국, 서로 다른 코어 간의 효율성은 매우 다릅니다.

호환성과 효율성도 상충되는 문제입니다. insertAdjanceHTML 메소드를 사용하는 것은 대부분의 경우 문자열을 삽입하는 가장 간단하고 호환 가능한 방법 중 하나입니다.

또 다른 문제는 강조 표시를 추가한 후 강조 표시를 하려면 다시 역추적해야 하는데 이는 두 개의 일치 항목에 해당합니다. 이는 효율성의 문제이기도 합니다. 따라서 데이터의 양이 많을 경우에는 강조된 속성을 false로 설정하는 것이 좋습니다. 이론적으로 이 효율성은 속도를 약 40% 증가시켜야 합니다.

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿