2012-05-10 9 views
9

Aquí 'más uno' es la escena:manualmente render generado dinámicamente Google botón

  • La página web no tiene un botón de Google +.
  • El usuario hace clic en un botón.
  • Se envía una solicitud AJAX que carga un poco de texto y el botón google + (<g:plusone href="http://www.website.com"></g:plusone>) en un div.
  • Puedo ver cuando veo el código que está allí, pero no está renderizando.

He oído que esto podría ser útil: gapi.plusone.go();

pero no estoy seguro.

¿Alguna idea?

Gracias

+2

Dado que ya tiene el g + div en su lugar, todo lo que tiene que hacer es invocar el render llamando a 'gapi.plusone.go()'. Es mejor pasarlo que el ID del contenedor div. –

Respuesta

10

Estás en el camino correcto. gapi.plusone.go() es una forma de mostrar explícitamente el botón +1. Aquí hay un fragmento de código del official docs que ilustra otro método usando gapi.plusone.render().

<html> 
    <head> 
    <title>+1 Demo: Explicit render</title> 
    <link rel="canonical" href="http://www.example.com" /> 
    <script type="text/javascript" src="https://apis.google.com/js/plusone.js"> 
     {"parsetags": "explicit"} 
    </script> 
    <script type="text/javascript"> 
     function renderPlusone() { 
     gapi.plusone.render("plusone-div"); 
     } 
    </script> 
    </head> 
    <body> 
    <a href="#" onClick="renderPlusone();">Render the +1 button</a> 
    <div id="plusone-div"></div> 
    </body> 
</html> 

La API de JavaScript está más documentada elsewhere on the previously linked page.

+0

Gracias! Otro problema que estaba teniendo (me parece tonto) fue que estaba llamando al render/go tan pronto como se cargó la página ... He agregado un poco de tiempo de espera para esperar que termine la solicitud de Ajax, y funciona ahora. ¡Gracias por tu ayuda! – JoeRocc

Cuestiones relacionadas