FB.Canvas.setAutoGrow() не работает с jquery .load

#facebook #canvas

#Facebook #canvas

Вопрос:

У меня проблема с высотой холста в моем приложении. У меня установлено значение FB.Canvas.setAutoGrow(); но когда я загружаю страницу в div через ajax, она не увеличивает высоту холста.

Что происходит, если страница, которую я загружаю, довольно длинная, тогда я загружаю страницу в тот же div, который меньше, высота холста остается такой же, как у страницы большего размера. Это не изменение размера полос прокрутки, чтобы они соответствовали странице меньшего размера.

Буду признателен за любую помощь.

Комментарии:

1. Казните меня. Но где ваш FB.init(), его следует запускать перед любой функцией FB. Кстати, попробуйте FB. Canvas.setAutoResize(); вместо этого.

2. @eureka Стоимость setAutoResize() будет снижена в январе 2012

Ответ №1:

Также убедитесь, что у вас есть FB.init(); перед вашим setAutoGrow();

Ответ №2:

у меня только что была та же проблема, FB.Canvas.setAutoGrow () не работал. в конце концов, это была странная проблема, у меня была переменная javascript с именем «name». переименовал его в «username», и теперь он отлично работает. остальные не показали никакой ошибки, и мой код работал без каких-либо проблем, только изменение размера не сработало, пока у меня было «name». так что, возможно, вам также следует просто попробовать переименовать переменные и / или функции…

Комментарии:

1. Это наглядный пример того, почему вы НИКОГДА не должны создавать глобальные переменные в JS. Единственным исключением является единственное пространство имен для обмена данными между объектами (например, window. ПРИЛОЖЕНИЕ)

2. У меня была такая же проблема. какой-то скрипт выполнял: функция foo() { name = ‘somename’} вместо функции foo() { var name = ‘somename’}

3. У меня возникла эта проблема. У меня были некоторые глобальные переменные, но, похоже, они не являются причиной. Есть ли что-нибудь еще, что я должен искать?

4. вам нужно убедиться, что ваш идентификатор приложения правильный, и что вы правильно вызываете FB.init, прежде чем вызывать FB. Canvas.setAutoGrow(); также проверьте консоль браузера на наличие ошибок.