문제

드롭다운 목록에 몇 개의 옵션이 포함될 수 있는지 아는 사람이 있나요?무제한인가요?성능이 저하되기 전에는 얼마나 됩니까?

도움이 되었습니까?

해결책

드롭다운 목록에 몇 개의 옵션이 포함될 수 있는지 아는 사람이 있나요?무제한인가요?

이론적으로는 무제한이라고 생각하지만 실제로는 컴퓨터의 RAM과 특정 브라우저의 제한 사항이 적용되지 않습니다.

성능이 저하되기 전에는 얼마나 됩니까?

다시 말하지만 이는 최소한 특정 브라우저, 컴퓨터의 메모리 및 처리 능력과 같은 몇 가지 요소에 따라 달라집니다.


편집하다:경험상 수천 가지 옵션이 포함된 드롭다운 목록이 있었습니다.하지만 누가 그 모든 것을 스크롤하고 싶기 때문에 이상적이지 않았습니까?이것이 바로 여러 가지 이유로, 특히 최종 사용자의 경험으로 인해 일부 유형의 자동 완성이 더 바람직한 이유입니다.

다른 팁

업데이트:4GB 메모리 PC에서 Firefox를 사용하여 Ubuntu에서 테스트한 DannyG를 기반으로 한 제한은 10,000개의 태그를 훨씬 초과했습니다.내 현재 Firefox는 최대 3GB를 사용하도록 설정되어 있으며 100,000개의 옵션에 도달했습니다. 하지만 이를 위해서는 브라우저의 기본 구성을 변경해야 할 것 같습니다.

우리는 30개 이상의 옵션이 제공되는 모든 경우에 Ajax 자동 완성 기능을 대체품으로 사용하기로 결정했습니다.

Firefox와 Chrome은 모두 기본 구성에서 4GB RAM을 갖춘 Windows 64b에서 10k 옵션으로 제한됩니다.

JSFiddle로 테스트됨http://jsfiddle.net/Mare6/

HTML:

<a>Testing Select</a>
<select id="list"></select>

자바스크립트

window.onLoad = function() {
    for (var i=0; i<10000; i++) {
        var name = "Option "+i;
        var sel = document.getElementById("list");
        sel.options[sel.options.length] = new Option(name,i);
    }
});

문안 인사,

도움이 된다면 눈에 띄는 성능 영향 없이 목록에서 약 500개를 사용했습니다!

내 경험에 따르면 성능 저하는 일반적으로 사용자 측에 있습니다. 내 황금률(어딘가에서 배운)은 몇 가지 옵션을 주고 받는 7가지 옵션입니다.

SW와 관련하여 보면 아마도 Integer의 최상위 범위일 것입니다.

편집하다:그런데 이것은 일종의 관련이 있습니다 앳우드

예, Chrome 및 Safari의 최대 항목 수는 10,000개입니다. select 적어도 요소.

Chrome 소스의 관련 줄은 여기에서 찾을 수 있습니다.정의된 최대값은 10000입니다., 제한을 적용하고 콘솔에 오류를 표시하는 코드

Firefox는 내 테스트에서 실질적인 제한이 없는 것 같습니다.

이론적으로는 제한이 없지만 일부 브라우저에서는 제한을 구현합니다.(사용과 유사 document.write 무한루프에 빠진다.)

하지만 결국 드롭다운 목록에서 제가 추천할 최대치는 약 50개입니다. 누구도 그렇게 많은 스크롤을 원하지 않기 때문입니다.즉, 알파벳 순서로 정리된 경우 드롭다운 목록에 최대 200개의 항목을 포함하는 것이 적절할 수 있습니다.(생년월일을 선택해야 하는 가입 양식과 같습니다.)

또한 다양한 세트 선택 항목이 있는 경우 일반적으로 드롭다운 목록이 가장 좋은 옵션입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top