Мне нужно использовать JavaScript, чтобы получить ширину и высоту окна для моего приложения android cordova.Кордова: Как получить ширину и высоту приложения?
Я попытался $(window).width() and $(window).height()
из библиотеки JQuery, но результаты темпераментны:
Я проверяю на Nexus 7, и когда я открываю приложение в портретном режиме я ширина = 600, высота = 888.
когда я повернуть устройство на альбомную и пересчитывать размеры не меняются, когда они должны были поменять местами, и когда я повернуть устройство, чтобы вернуться к портрету я ширина = 960, высота = 528.
Я очень смущен по этому результату, и это заставляет меня думать, что я использую неправильный код. Я был бы очень благодарен за помощь или предложения.
Вот функция для получения размеров экрана:
function getDimensions() {
//Gets height and width of web browser
var height = $(window).height();
var width = $(window).width();
//Stores dimensions in array of form [width,height]
var dimensions = [width,height];
return dimensions;
}
Вот где я проверить размеры после вращения:
function onOrientationChange() {
var dimensions = getDimensions();
console.log("rotation width " + dimensions[0] + " height " + dimensions[1]);
}
Не могли бы вы опубликовать ваш код, пожалуйста? – erikscandola
Я отредактировал, чтобы включить функцию getDimensions() – shakety
Похоже, вы вычисляете ширину и высоту перед появлением перерисовывания, что приводит к ширине и высоте окна перед вращением. Как вы обнаруживаете перерисовку окна после вращения?* Редактировать *: Вы пытались использовать setTimeout внутри обратного вызова для проверки после события ориентации? – Samsinite