2016-08-03 5 views
0

После долгих бессонных ночей мне наконец удалось интегрировать приличного обработчика наклона в плагин, над которым я работаю, который может определить, может ли браузер обрабатывать наклон, а затем if устройство, работающее с этим браузером, может обрабатывать наклон, ориентацию устройства или ландшафтную ориентацию .... бла-бла.orientationEvent.gamma принимает +180 до -180 градусов

После того, как все было закончено, я начал тестировать его на разностных устройствах. Тем не менее, интересная неприятность проявилась, когда я попробовал ее на своем ipad-приводе под управлением ios 9.3.2. Вот часть кода, который я использую, чтобы проверить ориентацию:

function handleOrientation(event) 
{ 
    var alphaQ = event.alpha; 
    var betaQ = event.beta; 
    var gammaQ = event.gamma; 
    var divnamehere = document.getElementById("somediv"); 
    divnamehere.innerHTML = "Alpha:" + alphaQ + "<br>Beta: " + 
          betaQ + "<br>Gamma: " + gammaQ; 
} 
window.addEventListener("deviceorientation", handleOrientation, false); 

Теперь это показывает значение Gamma, которая превышает + -90 градусов и может дать до + -180 градусов. Но предел Alpha составляет от 0 до 360 градусов, для бета - от -180 до 180 градусов, а для Gamma - от -90 до +90 (не 180).

Единственная причина, по которой я могу думать, заключается в том, что ipad-гироскоп работает по-разному. Может кто-нибудь, пожалуйста, подтвердите? Дядя google меня не сбивает.

+0

Я использовал чек, чтобы ограничить его до 90 градусов, что легко, но, пожалуйста, кто-нибудь может подтвердить, является ли разница в гироскопе в разных устройствах? – DKaikster

ответ

1

Это подтверждено. В iPad Air вращение гаммы составляет от +180 до -180 вместо +90 до -90.

Смежные вопросы