나는 iBooks에서 실행되는 스크립트 전자 책을 만들고 있습니다. 그들은 JS setTimeout
및/또는 requestAnimationFrame
을 사용하여 애니메이션을 수행합니다. 애니메이션이 너무 느리게 실행되는 이유를 광범위하게 디버깅 한 후, 요청한 20-50ms 대신에 (그리고 Chrome 또는 Safari의 바탕 화면으로), 번 이상의 간격으로 타이머가 실행되는 것으로 나타났습니다. 길거나 때로는 1 초 이상 (이것은 requestAnimationFrame
/webkitRequestAnimationFrame
이 iOS 버전 또는 적어도 iBooks 버전의 웹킷에서 사용 가능하지 않으므로 setTimeout
입니다.)iPad의 iBooks/Safari에서 JS 타이머 세분성이 매우 낮습니까?
추가 조사를 한 후에,이 문제는 분명히 iPad 문제만큼이나 iBooks 문제가 아니라는 것을 알았습니다. iPad의 Safari에서 비슷한 세부 사항을 발견합니다. 이것은 느린 프로세서 (iPad 2에서 테스트 중입니다)의 기능입니까? here?
또는이 경우에는 here과 같이 스크롤하는 동안 setTimeout이 작동하지 않는 것으로보고됩니다 (내 경우에는 스크롤이 관련되지 않음).
내가하고있는 애니메이션의 유형은 잠재적으로 하드웨어 가속화 될 CSS 애니메이션을 사용하여 구현할 수있는 유형이 아닙니다.
결론 iBooks 나 Safari와 상관없이 누구나 iPad에서 JS로 미세한 타이머 세분성을 얻는 방법에 대한 아이디어가 있습니까?