#jquery #facebook #facebook-graph-api #facebook-like #facebook-javascript-sdk
#jquery #Facebook #facebook-graph-api #facebook-лайк #facebook-javascript-sdk
Вопрос:
У меня есть пользовательское изображение, которое я хотел бы использовать вместо стандартного facebook like в стиле. У меня это работает, но он только «делится» страницей, а не «лайкает» ее.
Мне было интересно, есть ли способ использовать jQuery или javascript SDK, чтобы сделать эту кнопку «похожей» на страницу, поскольку я не согласен с использованием CSS для «маскировки» стандартной кнопки?
Создать пользовательскую кнопку непросто, как в twitters API…
Любая помощь по этому вопросу была бы высоко оценена!
Приветствия,
Дэйв
Ответ №1:
В общем случае значок facebook like содержится в :
.connect_widget_like_button .liketext
Таким образом, вы могли бы переопределить css с помощью :
.connect_widget_like_button .liketext {background-image : url('path_of_my_customized_image.jpg') !important;}
Использование !important
заставит css изменить ее в соответствии с вашими настройками, даже если css для значка facebook like загружен после этого фрагмента кода 😉
Надеюсь, это поможет 😉
РЕДАКТИРОВАТЬ: Использовать это в jQuery тоже легко, просто напишите :
$('.connect_widget_like_button .liketext').css('background-image', "url('path_of_my_customized_image.jpg') !important;");
Комментарии:
1. Должны ли мы вызывать этот jquery внутри функции, правильно загруженной iframe? Я пытаюсь что-то подобное, но кнопка like по-прежнему ничуть не меняется. Я вызываю jquery внутри функции, которую я вызываю в $ (‘iframe’).load(функция(){}); функция. Есть предложения относительно того, где я допускаю ошибку?
2. Я тоже пробовал это. Я также заметил, что теги span, div кнопки fb like имеют свои атрибуты стиля в теге. Я думаю, поскольку это переопределит любую другую указанную информацию о стиле, я полагаю, что это причина, по которой я ничего не вижу…
3. Вы использовали ключевое слово
!important
?4. Если она есть в атрибутах тега, вы можете попытаться перегрузить эти атрибуты с помощью
.attr()
. Пример изменения ширины :$('selector').attr('width', '100%')
Ответ №2:
Вы можете использовать Graph API, но проблема в том, что вам нужно будет создать приложение, а затем попросить пользователя разрешить публикацию этого приложения в их потоке. На мой взгляд, много ошибок.
Я понимаю, почему это так, потому что, если бы можно было запрограммировать это без авторизации пользователя в приложении, то это приложение могло бы спамить пользователей, заставляя их лайкать то, что им не понравилось.