无法将Google Plus按钮添加到我的博客帖子中

时间:2014-05-05 14:32:58

标签: javascript jquery html google-plus blogs

我是使用JavaScript的新手,我正在尝试将Google Plus“分享”按钮添加到我博客索引页面上的每个博客文章中。为此,我正在使用下面的JavaScript代码。

理论上,这应该提取我的网页的主要网址和每个a.blog-title-link的(href)。但是,google分享按钮上显示的链接对于每个帖子都是相同的。对于每个博文分享链接,我都会这样:/3/post/2014/04/this-is-6post.html。 小提琴Example

我尝试过使用.map()功能,但无济于事。

    <body>
     <div class='blog-index-page'>

    <div  class='blog-post'>
    <div class='blog-header'>
     <h2 class='blog-title'>
     <a href='/3/post/2014/04/this-is-6post.html' class='blog-title-link' class='blog-link'>THIS IS POST 6</a>
     </h2> 
     </div>
     </div>

     <div class='blog-post'>
     <div class='blog-header'>
      <h2 class='blog-title'>
     <a href='/3/post/2014/04/this-is-5post.html' class='blog-title-link' class='blog-link'>THIS IS 5 POST</a>
     </h2> 
     </div>
     </div>

     <div  class='blog-post'>
     <div class='blog-header'>
      <h2 class='blog-title'>
      <a href='/3/post/2014/04/this-is-4post.html' class='blog-title-link' class='blog-link'>THIS IS 4POST</a></h2> 
     </div>
     </div>

      </div>

    var uri =   $('a.blog-title-link').attr('href'); 

    var res = (uri);

 $('div.blog-post').each(function(){ 
$(this).append('<a href="https://plus.google.com/share?url='+(window.location.origin)+''+(uri)+'">shareplus</a>'); 
} );


    </body>

1 个答案:

答案 0 :(得分:1)

var uri =   $('a.blog-title-link').attr('href'); 
            ^^^^^^^^^^^^^^^^^^^^^---- a)
                                   ^^^^^^^^^^^--- b)

a)$(..)代码检索整个文档中的所有<a class="blog-title-link">元素

b).attr()调用然后获取a)中返回的 FIRST 元素的href

你可能想要更像

的东西
$('div.blog-post').each(function(obj){
      var uri = $(obj).find('a.blog-title-link').attr('href');
 });

这样,您就可以在各个<a>元素中搜索div.blog-post标记。例如而不是在DOM树中找到所有<a>标签,而是在寻找您当前树枝内的那个。