Измените href кнопки Google +1, используя jquery - PullRequest
0 голосов
/ 11 января 2012

как мне изменить атрибут href моей кнопки Google +1 с помощью некоторого jQuery

Кнопка изначально загружается с пустой ссылкой.

вот что я пробовал до сих пор

$(document).ready(function () {
    var qrCode = 'A12345';
    var shareLink = "http://<?php echo $_SERVER['HTTP_HOST'];?>/show.php?qrCode="+qrCode;
    $("#shareLink").attr("href", shareLink);
});

<g:plusone size='medium' id='shareLink' annotation='none' href='' callback='countGoogleShares'></g:plusone>

Ответы [ 5 ]

1 голос
/ 11 января 2012

Используйте JSAPI для явного отображения кнопки +1 в функции jQuery после установки href.

1 голос
/ 11 января 2012

Я наконец-то заставил его работать так, как я хотел. Я немного реструктурировал код, чтобы заставить его работать. Вместо того, чтобы пытаться изменить атрибут href в document.ready, я закончил тем, что создал пустой div в качестве контейнера для кнопки Google Plus и написал кнопку с правильным href с помощью .html ()

//load the google plus javascript api
<script type="text/javascript" src="https://apis.google.com/js/plusone.js">
    {"parsetags": "explicit"}
</script>

//create an empty div to be the target of the google plus button
<div id="plusContent"></div>

<script>
    //get the qrcode to append to the url (ajax call in real life)
    var qrCode = 'A12345';

    //build the google plus object text string
    var googleShareLink = "<g:plusone size='medium' id='shareLink' class='shareLink'  annotation='none' href='http://<?php echo $_SERVER['HTTP_HOST'];?>/show.php?qrCode="+qrCode+"' callback='countGoogleShares'></g:plusone>";

    //write the google plus object to the target div
    $("#plusContent").html(googleShareLink);

    //render the +1 buttons in the target location
    gapi.plusone.go("plusContent");
</script>
0 голосов
/ 31 июля 2013

Я использовал следующий код, который работает правильно:

<script type="text/javascript" src="http://apis.google.com/js/plusone.js">
</script>
<div id="plusone-div" class="plusone"></div>
<script type="text/javascript">
    gapi.plusone.render('plusone-div',{"size": "medium", "count": "true", "href": "[http://MySite.Com/]"});
</script>
0 голосов
/ 30 мая 2012

Вам не нужно иметь HTML-код в строке JS.

Я создал страницу аналогично тому, где я создал div, и внутри него я поместил свой тег g: plusone,Я поместил URL-адрес в качестве атрибута в div как «data-url», но вам не нужно было бы делать это здесь.URL:

var url = $(this).data('url');
gapi.plusone.render(this, {href: url});
0 голосов
/ 11 января 2012

Выберите тег с помощью функции jquery «.next ()». Вам просто нужно поместить выбираемый тег непосредственно перед этой кнопкой.

Почему вы хотите это сделать?

...