Функция обратного вызова LinkedIn
Я хочу вызвать функцию после нажатия кнопки "Поделиться" для ссылки в.
<div class="linkedinShare ci-aling" linkedin data-url='{{url}}' data-title='{{title}}' data-summary="{{text}}" data-shares='linkedinshares'>{{linkedinshares}}</div>
Вот сценарий, который я пытаюсь вызвать, но он вызывается только при загрузке страницы и не вызывается при нажатии кнопки "Поделиться". Я хочу, чтобы моя функция вызывалась, когда я нажимал кнопку "Поделиться".
$.getScript('http://platform.linkedin.com/in.js', function () {
debugger
IN.Event.on(IN, 'systemReady', handleLinkedInEvent);
function handleLinkedInEvent(event) {
debugger
if (event) {
EventService.UpdateEventAudit($scope.event_id, "LinkedIn",
GetUrlReferrer());
}
}
});
UpdateEventAudit - это функция, которую я пытаюсь вызвать. Любая идея кто-нибудь?
1 ответ
Если я правильно понимаю, вы хотите иметь возможность отслеживать события, когда пользователь делится через linkedin...
Я попробовал ваш код и после некоторых исследований нашел альтернативный способ вызова API...
создал мини-ручку, которую вы можете посмотреть здесь https://codepen.io/craigiswayne/pen/Bqqbjz
Документацию по этому вопросу можно найти здесь: https://developer.linkedin.com/docs/share-on-linkedin
IN.Event.on(IN, 'systemReady', function() {
var shareLink = document.getElementById('shareLink');
shareLink.onclick = function(){
event.preventDefault();
var params = {
"comment": "Check out developer.linkedin.com! " + this.getAttribute('href'),
"visibility": {
"code": "anyone"
}
};
IN.API.Raw("/people/~/shares?format=json")
.method("POST")
.body(JSON.stringify(params))
.result(StackruDemo.updateShareCount)
.error(function(errorMessage){
StackruDemo.logOutput('error occurred');
console.log(errorMessage);
});
};
document.body.appendChild(shareLink);
});
var StackruDemo = {
updateShareCount: function(result){
var existingCount = parseInt( document.getElementById('count').value );
existingCount = isNaN(existingCount) ? 0 : existingCount;
document.getElementById('count').value = existingCount + 1;
StackruDemo.logOutput( 'updated count' );
StackruDemo.logOutput( 'Total Shares = ' + document.getElementById('count').value );
StackruDemo.logOutput( 'View Share here ' + result.updateUrl );
},
logOutput: function(text){
document.getElementById('output').value += text + '\n';
}
}