У меня есть 2 приложения facebook, одно из которых имеет высоту 872 пикселей, а другое - высоту 712 пикселей. Для приложения 827 пикселей я успешно изменил размер приложения с 800 до 872 пикселей с помощью facebook JS SDK. Но для 712 пикселей я не смог снизить его с 800 пикселей. Есть ли минимальная высота для приложения facebook canvas или я делаю что-то не так?
Высота приложения Canvas Canvas менее 800 пикселей
Ответы (3)
Судя по всему, Canvas APP не может опускаться ниже 800 пикселей.
person
Luis D Urraca
schedule
17.05.2012
Вы пытались установить высоту динамически? это сработало для меня, поскольку я пытаюсь отобразить несколько страниц высотой менее 800 пикселей. обычная высота вкладок моей страницы была ~ 700 пикселей.
window.fbAsyncInit = function() {
FB.init({
appId: window.FB_APP_ID
});
// set height dependent on page (min height is 800px)
// but we are attempting to get it shorter
var body_height = $('body').first().outerHeight();
FB.Canvas.setSize({
height: body_height
});
}
что также сработало для меня, если не захватить высоту тела, чтобы установить высоту на что-то более короткое, чем любая из ваших страниц при загрузке, а затем запустить функцию setAutoGrow(), чтобы расширить ее до нужной высоты с некоторой задержкой. хотя это приведет к тому, что ваш холст будет иметь начальную заданную высоту (например, 480 пикселей), а затем будет увеличиваться до размера всякий раз, когда срабатывает ваш тайм-аут.
window.fbAsyncInit = function() {
FB.init({
appId: window.FB_APP_ID
});
FB.Canvas.setSize({
height: 480 // some height shorter than necessary
});
setTimeout(function(){
FB.Canvas.setAutoGrow();
}, 500);
}
person
twmulloy
schedule
06.03.2013
Чтобы справиться с этим:
FB.Canvas.getPageInfo(
function(info) {
// console.log(info);
if (info.clientHeight< 800) FB.Canvas.setSize({ height: 800 });
}
);
person
Sebastien Horin
schedule
22.02.2016