에 IE6에서 매우 느립니다, 우리는 그것의 사실에 달렸다 매우 느린 30000 개 항목을 포함하는 데이터 소스에 대한 IE6 (AN을 입력 할 때 에 자동 완성 필드, IE가 응답하기 위해 몇 분 정도 걸립니다).자동 완성 YUI의 자동 완성 기능을 사용하려고 큰 데이터 세트
그러나 동일한 정확한 코드는 IE8에서 거의 실시간으로 작동합니다.
뭐가 잘못 되었나요? 어떻게 든 이걸 최적화 할 수 있을까요? IE6 + YUI 자동 완성은 그러한 대형 데이터 세트를 위해 설계되지 않았습니까? "키 누르기를 잡아 검색 JS 기능의 경우 실행
<span id="port_autocomplete" class="yui-skin-sam" style='position: relative;'>
<input type='text' id='selected' maxlength=10 name='selected'
value='' isSelected=1 onkeyup="searchOnEnter();">
<div id="autocomplete_container" style="position: absolute"></div>
</span>
searchOnEnter
함수는 표준이다 : 그것을 사용하는 HTML을 여기
Y.namespace('YAHOO.program');
Y.program.AllTreeItemsArr = new Array();
// Populate the array with 30000 elements
Y.program.BasicLocal = function() {
var oDS = new YU.LocalDataSource(Y.program.AllTreeItemsArr);
oDS.responseSchema = {fields : ["portfolio"]};
var oAC = new Y.widget.AutoComplete("selected"
, "autocomplete_container", oDS);
oAC.prehighlightClassName = "yui-ac-prehighlight";
oAC.useShadow = true;
oAC.typeAhead = true;
oAC.queryDelay = .05;
oAC.typeAheadDelay = .5;
return {
oDS: oDS,
oAC: oAC
};
}();
그리고 것 :
다음은 Autocompleter에 초기화 우리의 코드입니다 키 == 13 ".
일부 프로파일 데이터없이 말을하기 어렵다. Dynatrace (내가 생각하는 IE6을 지원합니다)로 응용 프로그램을 프로파일 링 해보십시오. http://ajax.dynatrace.com/pages/ 데이터의 더 작은 하위 집합으로 무엇이 느리게 실행되는지보십시오. –
여기서 질문은 어디에 있습니까? 물론 IE6는 느리고, 그런 큰 데이터 세트로 초기화하는 이유는 무엇입니까? – ChaosPandion
@Chaos : 질문은 "우리가 뭔가 잘못하고있는 것입니까? 어떻게 든 최적화 할 수 있습니까? IE6 + YUI 자동 완성 기능이 그러한 대형 데이터 세트를 위해 설계되지 않았습니까?" – DVK