Как отследить, какой виджет кнопки «Мне нравится» вызвал обратный вызов Event.Subscribe edge.create? - PullRequest
2 голосов
/ 31 января 2012

Есть ли способ отследить, какая кнопка была нажата?Я знаю, что вы можете использовать href и widget, но они оба в значительной степени бесполезны, если URL-адрес одинаков для нескольких кнопок.была нажата кнопка, если у вас более одной на странице) и все переменные виджета возвращают [объект] [объект]

Может кто-нибудь дать мне больше информации о переменной виджета и как ее можно использовать?

Это действительно раздражает, и Google, и Twitter делают это очень просто с помощью своих API, почему Facebook отказывается сообщать людям, какая кнопка была нажата?

Ответы [ 2 ]

4 голосов
/ 01 февраля 2012

На самом деле, вы можете использовать параметр widget, чтобы сказать, какая кнопка «Нравится» была нажата.Что я не знал, так как это не задокументировано , насколько я могу судить (за исключением этого сообщения в блоге ).

В вашем обратном вызове вместо alert(widget) попробуйте console.log(widget).Это покажет вам (в консоли JavaScript, как Firebug ) всю информацию об объекте (что гораздо полезнее, чем просто [object]).

Возможно, естьпару способов сделать это, но один из способов, который я только что попробовал, - добавить идентификатор к кнопке «Мне нравится», например:

<fb:like id="myButtonOne" href="http://testurl.com"></fb:like>

Затем в обратном вызове посмотрите на свойство widget.dom.id, чтобы увидетьесли у него есть мой ID:

FB.Event.subscribe('edge.create', function(href, widget) {
  //console.log(widget); // looks inside the widget object, for testing
  alert(widget.dom.id);
});

Вы должны получить всплывающее оповещение с надписью "myButtonOne".Если вы дадите каждой кнопке уникальный идентификатор, теперь вы можете указать в обратном вызове edge.create, какая кнопка была нажата (даже если они имеют одинаковый URL / href)!

0 голосов
/ 26 сентября 2013

Вы можете использовать параметр widget, чтобы получить HTML-элемент кнопки «Мне нравится», которая вызвала событие.

Этот новый параметр был недавно добавлен в официальную документацию. Взгляните сюда: http://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...