Поделиться кнопкой JS разные URL для каждой кнопки

У меня есть такая структура, и я использую Share-Button

<div class="video-snap">
  <div class="video-content">All the content is here</div>
  <div class="share-button" data-url="video1">
</div>
<div class="video-snap">
  <div class="video-content">All the content is here</div>
  <div class="share-button" data-url="video2">
</div>

Мне нужно, чтобы каждая кнопка общего доступа разделяла URL-адрес, указанный в поле данных. Я придумал это, но результат в том, что даже на консоли каждый работает хорошо (я правильно получаю все URL). URL, назначенный кнопке, всегда является последним из элементов video-snap (все переходят на URL video2 в это пример)

$(window).load(function() {
    $('.video-snap').each(function() {
        var url = $('.share-button', this).data('url');
        console.log(url);
        config = {
            networks: {
                facebook:{
                    url: url
                },
                google_plus:{
                    url: url
                },
                twitter:{
                    url: url
                },
                pinterest:{
                    enabled: false
                },
                email:{
                    enabled: false
                }

            }   
        }
        new Share('.share-button', config)

    }); 
});

То, что я ищу и не могу достичь, - это то, что у каждой кнопки общего доступа есть свой собственный URL. Не уверен, что я делаю неправильно, так как я использую каждую функцию.

1 ответ

Решение

Использовать .each() Индекс для индивидуализации .share-button при создании новой акции проблема заключалась в том, что оба div.video-snapесть share-button без возможности дифференцировать их.

HTML

<div class="video-snap">
    <div class="video-content">All the content is here</div>
    <div class="share-button share-0" data-url="video1">
</div>
<div class="video-snap">
    <div class="video-content">All the content is here</div>
    <div class="share-button share-1" data-url="video2">
</div>

JS - добавляет индекс к каждому .share-button

$(document).ready(function(){

    $('.video-snap').each(function(index){
        $(".share-button", this).addClass('share-' + index);
        config = { url: $('.share-button', this).data('url') }
        new Share('.share-' + index, config);
    });

});
Другие вопросы по тегам