Вы перенаправляете на другую страницу вместе или сразу после вызова FB.logout?
Я обнаружил, что FF и Chrome выполнят вызов FB.logout достаточно быстро, чтобы это работало правильно, но это IEи мобильные браузеры (из-за скорости сети в дополнение к различиям в механизме JavaScript) не смогут успешно завершить вызов до того, как браузер загрузит любую страницу, на которую вы перенаправляете.
Итак, самое безопасное, это поставить любойперенаправить в функцию обратного вызова и передать ее в FB.logout следующим образом:
function mysignout(url)
{
FB.logout(function()
{
top.location.href = 'url'
});
}
Я изначально помещал FB.logout непосредственно в событие onclick якорной ссылки, и в то время как это работало в FF и Chrome, это делалоне работает в IE или в моем браузере Android.Выполнение вышеизложенного сделало его работоспособным во всех средах.
Удивительно, но для FB.logout требуется два с лишним секунды для полного успеха в большинстве сред.Очевидно, что для отмены аутентификации на сервере используется некий ajax-вызов, а не просто уничтожение локального cookie.