2011-10-03 4 views
5

기본적으로 html 요소의 모든 단어를 스팬으로 변환하고 보이지 않게 한 다음 뷰에 애니메이션을 적용하는 작은 jquery 플러그인을 작성했습니다. 여러분이 전체 요소를로드하는 데 걸리는 시간을 정의 할 수 있도록 테스트를 기반으로 수학을 올바르게 만들었지 만 실제로는 실제로는 더 오래 걸립니다.CPU가 자바 스크립트에서 가질 수있는 효과의 정도 setInterval

참조 jsfiddle :은 "당"변수와 "MS는"이 기본적으로 단어마다 "MS"밀리 초 "당"처리하도록 지시 http://jsfiddle.net/A2DNN/

참고.

로그에서 1 워드 1ms를 처리하므로로드 시간이 훨씬 빨라야합니다.

그래서 궁금한데, CPU가 병목 현상을 일으킬 가능성이 있습니까? 그 점에서 JS는 그래픽 처리에서 매우 빠르지 않은 CPU에 의해 처리되는보기에 항목을 희미하게합니다.

물어 보니 거의 바보 같아요. 요즘 CPU가 이런 작은 작업 부하에서 웃을 것이라고 기대하고 있습니다.

+4

엄청난 양의 추상화 계층을 고려할 때 JavaScript는 실제 메탈에서 실행되도록해야한다는 점에서 작은 작업 부하는 없습니다. – Brad

+3

대부분의 작업은 자바 스크립트 자체에 없습니다. 브라우저의 DOM에 있기 때문에 각각의 독자적인 스타일링은 말할 것도없고 'span'태그의 리프가 많은 트리를 만들어야하기 때문입니다. – namuol

+0

자, 기본적으로 JS는 병목 현상이 아닙니다. DOM이 있습니다. 그것은 수치 스럽습니다. 당분간 저는 그 문제를 해결할 수 없습니다. 의견을 답변으로 제출하십시오. – Naatan

답변

3

브라우저의 JavaScript 구현에 의해 강제되는 최소 시간 초과로 인한 것입니다. 1ms 제한 시간을 가질 수 없으며, 그보다 약간 더 큽니다. 여기에는 이미 discussion이 있습니다.

+0

그 것처럼 보입니다. 나는 방금 크롬을 사용하여 그것을 상당히 빠르게로드했다. (나는 Firefox를 사용하고 있었다). 나는 그들이 한계를 부과하는 이유를 얻었지만, 동시에 남용을 막기 위해 그들의 측면에서 불쾌한 해결 방법을 느낀다. – Naatan

+0

어쩌면,하지만 실제로 1ms 시간 제한이 필요합니까? 함수 호출 당 둘 이상의 'span'을 처리하려고 시도 했습니까? 10 개의 단어가 동시에 나타나거나 1ms 지연되면 실제로 알 수 없습니다. –

+1

그래, 좋은 타협, 제안 주셔서 감사합니다. – Naatan

관련 문제