Javascript 谷歌共享按钮动态设置数据预填充文本

Javascript 谷歌共享按钮动态设置数据预填充文本,javascript,jquery,google-plus,google-plus-one,share-button,Javascript,Jquery,Google Plus,Google Plus One,Share Button,我目前有一个网站,在我正在创建的社交网络小部件上包含谷歌共享按钮(以及Facebook和Twitter)。我想做的是能够在textarea字段中键入一些文本,按下“发送”按钮后,这些文本将共享到Google+用户的墙上(我已经有Facebook和Twitter帖子在工作)。现在我知道Google+的共享按钮有一个名为“data prefilltext”的字段,这是我试图用textarea中的消息设置的字段。当我按下“发送”按钮时,我可以看到“数据预填充文本”字段值的变化,但在弹出窗口中,我看不到

我目前有一个网站,在我正在创建的社交网络小部件上包含谷歌共享按钮(以及Facebook和Twitter)。我想做的是能够在textarea字段中键入一些文本,按下“发送”按钮后,这些文本将共享到Google+用户的墙上(我已经有Facebook和Twitter帖子在工作)。现在我知道Google+的共享按钮有一个名为“data prefilltext”的字段,这是我试图用textarea中的消息设置的字段。当我按下“发送”按钮时,我可以看到“数据预填充文本”字段值的变化,但在弹出窗口中,我看不到文本的变化。代码如下:

HTML:

正如我所说,在Firebug或Google的开发者控制台中检查元素时,我可以看到属性值的变化,但是当Google共享弹出窗口打开时,文本中的变化不会反映出来


任何帮助都将不胜感激,因为我现在有点不知所措。提前感谢大家。

您可以使用javascript呈现按钮,下面是代码示例:

var options = {
                contenturl: 'https://dev.diesocialisten.at/google+/?v=5',
                clientid: 'YOUR CLIENT ID',
                cookiepolicy: 'single_host_origin',
                prefilltext: 'Developers, you should check this out!',
                calltoactionlabel: 'LEARN_MORE',
                calltoactionurl: 'https://dev.diesocialisten.at/google+/?v=5'
};
gapi.interactivepost.render('share-button', options); //button with the ID share-button

我也面临着同样的问题。经过长期的努力,我找到了解决办法。我正在和你们分享答案

<html>
  <head>
    <title>Share Demo: Deferred execution with language code</title>
    <link rel="canonical" href="http://www.example.com" />
  </head>
  <body>
  <script>
  window.___gcfg = {
            lang: 'en-US',
            parsetags: 'explicit'
          };
  </script>
  <script type="text/javascript" src="http://apis.google.com/js/plusone.js"></script>
    <div id ="sharePost">Share</div>
 <script>
     (function() {
           var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
           po.src = 'http://apis.google.com/js/client:plusone.js';
           var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
         })();
     var options = {
                contenturl: 'http://www.google.com',
                contentdeeplinkid: '/pages',
                clientid: 'xxxxxxxxxxxxx.apps.googleusercontent.com',
                cookiepolicy: 'single_host_origin',
                prefilltext: 'Hai happy friday',
                calltoactionlabel: 'INVITE',
                calltoactionurl: 'http://www.google.com'
              };
              // Call the render method when appropriate within your app to display
              // the button.
              gapi.interactivepost.render('sharePost', options);

      </script>
  </body>
</html>

共享演示:使用语言代码延迟执行
窗口。\uuuuuu gcfg={
朗:“恩,我们”,
parsetags:'显式'
};
共有
(功能(){
var po=document.createElement('script');po.type='text/javascript';po.async=true;
po.src=http://apis.google.com/js/client:plusone.js';
var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(po,s);
})();
变量选项={
contenturl:'http://www.google.com',
contentdeeplinkid:“/pages”,
clientid:'xxxxxxxxxxxx.apps.googleusercontent.com',
cookiepolicy:“单主机源”,
预告语:“海周五快乐”,
calltoactionlabel:'邀请',
calltoactionurl:'http://www.google.com'
};
//在应用程序中适当时调用render方法以显示
//按钮。
gapi.interactivepost.render('sharePost',选项);
当您从ajax获得响应时,您必须在ajax响应之后再次调用google plus share js文件

var options = {
                contenturl: 'https://dev.diesocialisten.at/google+/?v=5',
                clientid: 'YOUR CLIENT ID',
                cookiepolicy: 'single_host_origin',
                prefilltext: 'Developers, you should check this out!',
                calltoactionlabel: 'LEARN_MORE',
                calltoactionurl: 'https://dev.diesocialisten.at/google+/?v=5'
};
gapi.interactivepost.render('share-button', options); //button with the ID share-button
<html>
  <head>
    <title>Share Demo: Deferred execution with language code</title>
    <link rel="canonical" href="http://www.example.com" />
  </head>
  <body>
  <script>
  window.___gcfg = {
            lang: 'en-US',
            parsetags: 'explicit'
          };
  </script>
  <script type="text/javascript" src="http://apis.google.com/js/plusone.js"></script>
    <div id ="sharePost">Share</div>
 <script>
     (function() {
           var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
           po.src = 'http://apis.google.com/js/client:plusone.js';
           var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
         })();
     var options = {
                contenturl: 'http://www.google.com',
                contentdeeplinkid: '/pages',
                clientid: 'xxxxxxxxxxxxx.apps.googleusercontent.com',
                cookiepolicy: 'single_host_origin',
                prefilltext: 'Hai happy friday',
                calltoactionlabel: 'INVITE',
                calltoactionurl: 'http://www.google.com'
              };
              // Call the render method when appropriate within your app to display
              // the button.
              gapi.interactivepost.render('sharePost', options);

      </script>
  </body>
</html>