2010-07-18 2 views
13

내 웹 사이트에는 홈 페이지의 다양한 <div> 상자 그림자의 색상을 지속적으로 변경하는 jQuery 스크립트 (Shadow animation jQuery plugin)가 있습니다.사용자의 컴퓨터 성능에 따라 JavaScript 기능을 사용하지 않음

애니메이션은 필수는 아니지만 느린 컴퓨터에서는 많은 CPU 시간이 필요합니다.

스크립트가 '너무 느리게'실행되는지 확인할 수 있습니까? 그런 다음 성능에 영향을 미치기 전에 비활성화 할 수 있습니다.

이것도 좋은 생각입니까? 그렇지 않다면 jQuery 애니메이션을 쉽게 분해 할 수 있습니까?

+6

위안이라면 꽤 멋져 보입니다. – Metalshark

+2

저는 자바 스크립트 전문가는 아니지만 제 추측은 쉽지 않습니다. (필자는 비슷한 생각을 최근에 생각하기 시작했다.) 지금까지, 필자의 최선의 제안은 Date 객체를 통해 자신의 퍼포먼스 모니터링을 추가하는 것이다. 매번 샘플을 가져 와서 차이가 임계 값을 초과하는 경우 스크립트가 애니메이션을 수행하는 것을 중지하십시오. 그러나 누군가가 더 정확한 제안을했는지 알 수 있습니다.:) – mjschultz

+0

+1 클라이언트의 렌더링 성능을 고려하면 좋은 생각입니다. –

답변

7

이것은 간접적으로 문제를 해결할 수 있습니다. 이 사이트에서 jQuery 플러그인과 비슷한 알고리즘 및 성능 테스트를 선택하십시오. 사이트에서하는 것처럼 포괄적 인 테스트를 실행하지 마십시오. 대신, 작고 빠른 알고리즘을 선택하고 눈에 띄지 않는 시간 동안 실행하십시오.

미리 정의 된 시간 범위를 사용하여 이러한 테스트를 실행할 수있는 시간을 제한하십시오. 예를 들어 스팬이 200ms이고 브라우저 A가있는 고속 시스템에서 100 회 반복을 수행 할 수있는 반면 임의의 사용자 시스템에서는 5 회 반복 만 완료 할 수 있다고 가정 해 보겠습니다. 그러면 사용자의 시스템에서이를 사용 중지 할 수 있습니다. 기계. 최적의 번호를 찾을 때까지 조정할 수 있습니다.

보너스로 모든 테스트 결과를 다시 서버로 보내십시오. 그러면 사용자가 속도 스펙트럼에서 어디에 있는지 알 수 있습니다. 대다수의 사용자가 더 느린 컴퓨터와 오래된 브라우저를 사용하는 경우,이 모든 것을 제거하는 것이 좋습니다.

+2

테스트의 소스 코드를 찾을 수있는 위치를 알려주십시오. – IgalSt

6

페이지로드시 집중적으로 처리하는 루프를 몇 번 반복하면되지만, 페이지가 느려지고 CPU로드가 늘어날 수 있으므로 위대하다고는 보이지 않습니다. 해결책.

예전에 사용했던 절충안은 브라우저 버전을 기반으로 한 결정이었습니다. 예를 들어 Internet Explorer 6 사용자는 더 간단한 콘텐츠를 얻었지만 더 나은 JavaScript 성능을 가진 최신 브라우저는 애니메이션을 얻습니다. 그것은 실용적인 수준에서 꽤 잘 작동하는 것처럼 보였습니다. 실제로 브라우저 선택은 JavaScript 성능의 중요한 요소이며,이를 고려하여 매우 단순하게 원하는 것과 90 %의 적합성을 얻을 수 있습니다.

+0

그래도 두 번째 아이디어는 컴퓨터 성능을 확인할 수 없습니다 ... 사실, 빠른 컴퓨터의 많은 소유자는 속도가 느림을 알 수 없기 때문에 느린 소프트웨어를 사용하고 있습니다. – mbq

+0

좋은 생각이지만이 플러그인은 어쨌든 새 브라우저에서만 작동합니다. – Pointy

+0

좋은 아이디어. 데이터가 없지만 IE6를 실행하는 사용자가 Chrome을 실행하는 사용자보다 덜 강력한 컴퓨터를 보유 할 확률이 높습니다 (예 : –

1

브라우저 너비를 얻으려면 $(window).width()과 같은 작업을 수행 할 수 있습니다. 이것을 사용하면 무엇이든 < 1024px 너비가 넷북, 스마트 폰 또는 오래된 컴퓨터 일 가능성이 높다는 가정을 할 수 있습니다.

이것은 루프 타이밍만큼 정확하지는 않지만 훨씬 효율적입니다.

분명히이 규칙은 일반화 된 것이며 1024px 이상인 컴퓨터가 느린 것입니다. 그러나 일반적으로 1024px + 컴퓨터는 자바 스크립트를 처리 할 수 ​​있습니다 (소유자가 소프트웨어, 바이러스 검색 및 브라우저 툴바를로드 할 때까지)

희망이 유용합니다.

관련 문제