кнопка слушателя нравится и не похожа на кнопку из приложения iframe

Я делаю приложение iframe для фан-страницы, проблема в том, что если пользователь нажимает НРАВИТСЯ в верхней панели facebook, он перезагружает страницу приложения iframe, но не обновляет, если пользователь нажимает UNLIKE в той же позиции

Мое приложение проверяет, НРАВИТСЯ ли пользователь или НЕ НРАВИТСЯ на фан-странице, и оно не может продолжить работу, если сначала не нажимает кнопку НРАВИТСЯ (кнопка «Нравится» означает кнопку на верхней панели, которая находится вне приложения iframe)

<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
  appId      : '<?php echo $app_id; ?>', // App ID
  status     : true, // check login status
  channelUrl : '//www. domain .it/<?php echo $sub_dir_app; ?>/cf.php', // Channel File
  cookie     : true, // enable cookies to allow the server to access the session
  xfbml      : true  // parse XFBML
});
FB.Event.subscribe('edge.remove', function(response) {
//top.location.reload();
    alert('ok NOLIKE');
});
FB.Event.subscribe('edge.create', function(response) {
//top.location.reload();
    alert('ok LIKE');
});
};
// Load the SDK Asynchronously
(function(d){
 var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
 if (d.getElementById(id)) {return;}
 js = d.createElement('script'); js.id = id; js.async = true;
 js.src = "//connect.facebook.net/it_IT/all.js";
 ref.parentNode.insertBefore(js, ref);
}(document));

person Alessio D'Annibale    schedule 13.04.2012    source источник
comment
например, вы можете увидеть это приложение: facebook.com/extremesilver.gioielli/app_119909504798072 , сначала нажмите НРАВИТСЯ, и вы увидите обновление, pasr вы нажмете НЕ НРАВИТСЯ и увидите обновление приложения iframe, в стандартном приложении обновление для UNLIKE не работает   -  person Alessio D'Annibale    schedule 13.04.2012


Ответы (1)


Используйте Javascript SDK с методом 'FB.Event.subscribe'. События: edge.create - Нравится edge.remove - Не нравится

Подробнее: https://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/

person Yan Berk    schedule 13.04.2012
comment
Я инициализирую ФБ. но когда я помещаю FB.Event.subscribe('edge.remove', function(response) { alert('ok NOLIKE'); }); но я получаю эту ошибку: Uncaught ReferenceError: FB не определен - person Alessio D'Annibale; 13.04.2012
comment
вам необходимо определить FB, как описано здесь в разделе «Загрузка»: developers.facebook.com/ документы/ссылка/javascript - person Yan Berk; 13.04.2012
comment
Я определил FB в своем приложении iframe - person Alessio D'Annibale; 13.04.2012
comment
Пожалуйста, отредактируйте свой исходный ответ с фрагментами кода, которые вы разместили здесь. Мне трудно понять это в разделе комментариев. Спасибо. - person Yan Berk; 13.04.2012
comment
У вас есть ‹div id=fb-root›‹/div›, определенный в HTML? - person Yan Berk; 13.04.2012
comment
В файрфоксе работает? stackoverflow.com/ вопросы/4556941/ - person Yan Berk; 13.04.2012
comment
но FB.Event.subscribe должен находиться внутри или вне window.fbAsyncInit = function() {... } - person Alessio D'Annibale; 13.04.2012
comment
внутри области window.fbAsyncInit - person Yan Berk; 13.04.2012
comment
Ответ Firefox: FB не определен - person Alessio D'Annibale; 13.04.2012