Share = {
go: function(_element, _options) {
var
self = Share,
options = $.extend(
{
type: 'vk',
url: location.href,
count_url: location.href,
title: document.title,
image: '',
text: '',
},
$(_element).data(),
_options
);
if (self.popup(link = self[options.type](options)) === null) {
// Если не удалось открыть попап
if ( $(_element).is('a') ) {
$(_element).prop('href', link);
return true;
}
else {
location.href = link;
return false;
}
}
else {
// Попап успешно открыт, просим браузер не продолжать обработку
return false;
}
},
// ВКонтакте
vk: function(_options) {
var options = $.extend({
url: location.href,
title: document.title,
image: '',
text: '',
}, _options);
return 'http://vkontakte.ru/share.php?'
+ 'url=' + encodeURIComponent(options.url)
+ '&title=' + encodeURIComponent(options.title)
+ '&description=' + encodeURIComponent(options.text)
+ '&image=' + encodeURIComponent(options.image)
+ '&noparse=true';
},
// Открыть окно шаринга
popup: function(url) {
return window.open(url,'','toolbar=0,status=0,scrollbars=1,width=626,height=436');
}
};
$(document).on('click', '.social_share', function(){
Share.go(this);
});
<button class="social_share" data-type="vk">ВКонтакте</button>
// <b>VK</b>
<script type="text/javascript" src="http://userapi.com/js/api/openapi.js?49"></script>
<script type="text/javascript">
VK.init({ apiId: id_app, onlyWidgets: true });
</script>
// <b>FB</b>
<script src="//connect.facebook.net/en_US/all.js"></script>
// <b>Twitter</b>
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
// <b>VK</b>
// LIKE
VK.Observer.subscribe('widgets.like.liked', function(likeCount) {
// do something
});
// SHARE
VK.Observer.subscribe('widgets.like.shared', function(likeCount) {
// do something
});
// <b>FB</b>
FB.Event.subscribe('edge.create', function(opt_target) {
// do something
});
// <b>Twitter</b>
trackTwitterHandler_ = function(intent_event) {
var opt_target;
if (intent_event && intent_event.type == 'tweet' || intent_event.type == 'click') {
var socialAction = intent_event.type + ((intent_event.type == 'click') ? '-' + intent_event.region : '');
if(socialAction =='tweet') {
// do something
}
}
};
intent_handler = function(intent_event) {
trackTwitterHandler_(intent_event);
};
twttr.events.bind('click', intent_handler);
twttr.events.bind('tweet', intent_handler);
// do something
заменить на нужное действие.