Как закрыть всплывающее окно входа в Facebook после подключения пользователя?
-
05-07-2019 - |
Вопрос
Ниже мой код. По какой-то причине после того, как пользователь войдет в маленькое всплывающее окно, маленькое окно будет перенаправлено обратно на «/ " с большим количеством JSON-сессий в конце URL.
Как сделать так, чтобы маленькое окно закрывалось, а мое родительское окно обновлялось?
<script src="http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php/en_US" type="text/javascript"></script>
<fb:login-button v="2" onlogin='window.location("/test");' size="medium">Connect</fb:login-button>
<script type="text/javascript">FB.init("XXXXX",'/xd_receiver.htm');</script>
Решение 6
Я решаю это. Это было связано с моими настройками на странице FAcebook.
Другие советы
Я только что решил похожую проблему: когда вы входите через всплывающее окно входа в Facebook, и оно закрывается, страница не обновляется.
Мое приложение Facebook не было правильно настроено. Просто зайдите в настройки вашего приложения в Facebook и укажите правильный URL-адрес сайта (в разделе «Веб-сайт»). Если вы тестируете его локально, вы можете поместить http: // localhost /
Надеюсь, это поможет!
Перезагрузка страницы
Попробуйте установить флаг reloadIfSessionStateChanged
для FB.init
. Например,
FB.init( "myAPIkey",
"path/to/xd_receiver.htm",
{"reloadIfSessionStateChanged": true}
);
Из API Facebook
reloadIfSessionStateChanged
bool - если значение истинно, Facebook будет следить за изменениями в состоянии сеанса и перезагрузите текущую страницу, если изменения состояния сеанса. Эта опция удобно для реализации, которая необходимо перезагрузить страницу всякий раз, когда изменение состояния сеанса для того, чтобы генерировать разный контент с сервера сторона. р>
Для получения дополнительной информации посетите http: // developers .facebook.com / документы /? и = facebook.jslib.FB.Facebook.init р>
Всплывающее окно не закрывается
Я обнаружил, что у вас могут быть проблемы с закрытием всплывающего окна, если ваш path / to / xd_receiver.html
неверен или если ваша функция onlogin
для Ваша кнопка подключения не определена, поэтому обязательно проверьте их дважды.
Надеюсь, это поможет!
Вы можете использовать атрибут onlogin следующим образом:
onlogin="document.location.href=document.location.href;"
Это будет выполнено открывателем (обновлением страницы).
Если вы удалите атрибут onlogin, всплывающее окно также закроется, но страница ниже не обновится.
Я написал учебник по интеграции сообщества с Facebook Connect, вы можете прочитать его здесь а>. р>
Похоже, в вашем коде есть случайная буква h. Может ли это быть связано с функциональностью JS?
FB.init("XXXXX",'/xd_receiver.htm'h);
^
Мое всплывающее окно не закрывалось (при публикации в фиде), потому что у меня не было файла channel.html в нужном месте. После публикации сообщение перенаправляется в файл channel.html, чтобы (частично) закрыть всплывающее окно - поэтому отсутствие его в нужном месте означало, что оно не закрылось.