#javascript #jquery
#javascript #jquery
Вопрос:
Я пытаюсь переопределить функцию по умолчанию, которая включена в jsSocials
, чтобы просто выполнить мою пользовательскую функцию общего доступа (которая позволяет изменять Facebook meta)
По умолчанию jsSocials
HTML
<div class="jssocials-share jssocials-share-facebook"><a href="#" class="jssocials-share-link"><i class="fa fa-facebook jssocials-share-logo"></i><span class="jssocials-share-label">Share</span></a></div>
Новая функция общего доступа с использованием shareOverrideOGMeta
shareOverrideOGMeta(window.location.href, shareTitle, shareDesc, shareThumb);
Кажется простым, но по какой-то причине это не работает
$("div.jssocials-share-facebook *").on('click', function(e){
e.stopPropagation();
shareOverrideOGMeta(window.location.href, shareTitle, shareDesc, shareThumb);
console.log("share should be overridden");
});
Как я могу заставить это работать по-другому или исправить то, что я делаю неправильно, если это так просто?
Примечание: Новый общий код был протестирован с использованием нажатия клавиши и работает хорошо.
Ответ №1:
Я смог решить эту проблему, открепив и повторно привязав click
обработчик ВНУТРИ функции, которая настроила общий доступ в социальных сетях.
$(".jssocials-share-facebook *").unbind("click").on("click", function(e){
e.stopPropagation();
shareOverrideOGMeta(window.location.href, shareTitle, shareDesc, shareThumb);
});