Наличие кнопки Facebook «Отправить» по умолчанию открывает диалоговое окно

#jquery #facebook #facebook-social-plugins

#jquery #Facebook #facebook-социальные плагины

Вопрос:

Я бы хотел использовать кнопку «Отправить» на Facebook на моем сайте (как описано здесь: http://developers.facebook.com/docs/reference/plugins/send ).

По умолчанию кнопка отправки отображается на странице в виде маленькой кнопки. Когда пользователь нажимает кнопку «Отправить», открывается гораздо большее диалоговое окно.

Я бы хотел, чтобы это гораздо большее диалоговое окно открывалось автоматически при загрузке страницы, как если бы пользователь нажал кнопку отправки.

Я не прошу ничего вредоносного. Я просто хочу, чтобы диалоговое окно было открытым, поскольку оно будет находиться на странице «Общий доступ» моего сайта, и открытое диалоговое окно будет выглядеть намного лучше, чем маленькая кнопка отправки. Я не планирую делать фальсифицированные «отправки» или что-либо еще спам.

Я попробовал этот упрощенный бит, используя jquery, но он не работает…

 function expose() {
        $(".fb_button").click();
}

$(document).ready(function() {
        setTimeout(expose, 1000);
});
  

Ответ №1:

Разве социальные плагины FB не «инкапсулированы» внутри iframe? если это так, вы не сможете привязать событие к кнопке. И даже если это не в iframe, я думаю, Facebook попытается помешать вам «принудительно» выполнять автоматические клики, даже если ваши намерения хороши

Ответ №2:

Первая проблема, которую я вижу в вашем коде, заключается в том, что вы ссылаетесь на кнопку как .fb_button, в то время как код, который я получаю по ссылке разработчиков Facebook, которую вы опубликовали, — .fb-send . Учитывая, что вы сами это изменили, проблема заключается в вызове функции из setTimeout . Оно должно быть в формате

         setTimeout("expose()", 1000);
  

Надеюсь, это сработает

Ответ №3:

https://developers.facebook.com/docs/reference/dialogs/send / Здесь приведен пример вызова диалогового окна с помощью javascript