Я хочу использовать кнопку «Нравится» на Facebook на моем веб-сайте.
Это так просто, как все знают, но у меня есть проблема с цензурой в нашей стране.
Facebook подвергается цензуре в нашей стране, и если я использую простое iframe
, люди, которые не имеют доступа к Facebook (не могут пройти цензуру), увидят страницу блокировки, которую я не хочу.
Итак, я хочу проверить, является ли загруженный адрес Facebook, показать им iframe
, иначе (они будут перенаправлены на другой веб-сайт) скрыть iframe
.
Могу ли я узнать это? Я имею в виду что-то вроде адреса, контента или идентификатора и т. Д.
Вот мой код:
<html>
<head>
<title>facebook test</title>
<style>
.facebook{
display:none;
}
</style>
<script type="text/javascript" src="jquery.js"></script>
</head>
<script type="text/javascript">
$.ajax({
url: 'https://graph.facebook.com/btaylor?callback=?',
dataType: 'json',
success: function(data) {
$(".faceboock").show();
// alert('success - facebook works');
// alert('data = ' + JSON.stringify(data));
},
error: function() {
alert('error - facebook fails');
}
});
</script>
<div class="faceboock">
<iframe src="http://www.facebook.com/plugins/likebox.php?href=http%3A%2F%2Fwww.facebook.com%2Fpages%2Fmypage%2F152215541478267&width=292&colorscheme=light&show_faces=true&stream=true&header=true&height=427" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:292px; height:427px;" allowTransparency="true"></iframe>
</div>
Работает, когда клиент имеет доступ к Facebook, я имею в виду, что «success: function» работает, а функция error - нет.
Проблема в том, что когда Facebook недоступен, json никогда не отвечает.
Есть ли способ установить тайм-аут для ответа или что-то еще для обработки ошибки?