Como criar dinamicamente “Compartilhar este botão” com URLs personalizados com uma função javascript?
im usando ohttp: //sharethis.com para oferecer aos usuários de um site uma maneira simples de compartilhar conteúd
Eles têm informações sobre "botões personalizados" aqui:http: //help.sharethis.com/customization/custom-button
Parece especificar o URL, no exemplo, todos eles têm apenas um html assim:
<span class="st_sharethis" st_url="http://mycustomurl.com" st_title="Sharing Rocks!"
displayText="ShareThis"></span>
Mas preciso criar botões dinamicamente rapidamente, sem recarregar a págin
ntão, em um aplicativo flash que estou construindo, tenho um "botão de compartilhamento" que aciona uma função javascript na página da Web que faz com que uma div "pop-up" desapareça no centro da tela em que desejo exibir os botões de compartilhamento. Dependendo do botão de compartilhamento em que alguém clicar, ele precisará ter um URL criado dinamicamente.
É importante que fechem a caixa de diálogo e, em seguida, clique no botão de compartilhamento novamente, esperando que o código substitua o código antigo por novos botões, com os novos URLs / título
Então, eu criei esta função javascript que eu chamo de flash, ao passar o URL do flash. Coloquei o script e tudo dentro da minha div "pop-up", esperando que os botões sejam renderizados dentro dessa div.
function shareChannel(theurl)
{
//I cant seem to find an example of what to put here to load the buttons, and give them a custom URL and title
//finally display the popup after the buttons are made and setup.
displaypopup();
}
lguém poderia postar um exemplo de como posso fazer isso sem precisar recarregar a págin
EDIT: @ Cubed
<script type="text/javascript">
function shareChannel(chaan)
{
document.getElementById('spID1').setAttribute('st_url', 'http://mycustomurl?chan='+chaan);
document.getElementById('spID1').setAttribute('st_title', 'Custom Title is ['+chann+'] it works!');
stButtons.locateElements();
centerPopupThree();
loadPopupThree();
}
</script>
Basicamente nada acontece. Eu odeio usar javascript porque realmente não tenho idéia de como receber mensagens de erro ou depurar. Quando trabalho com o flex, tenho um ótimo depurador / console para contornar. Então, desculpe, estou tendo problemas para fornecer mais informações. Eu notei quando removi apenas o
document.getElementById('spID1').setAttribute('st_url', 'http://mycustomurl?chan='+chaan);
document.getElementById('spID1').setAttribute('st_title', 'Custom Title is ['+chann+'] it works!');
O pop-up aparece.
Mas se eu tiver o código setAttribute acima dentro da função, o pop-up nunca aparece, então estou assumindo que algo nesse código está quebrando. Alguma sugestão? Ou pelo menos uma maneira de usar o chrome para me dizer qual é o erro? Tentei o console do elemento inspecionar, mas não havia nada que aparecesse lá quando iniciei a funçã
Além disso, no topo do meu código eles me fizeram usar:
<script type="text/javascript">var switchTo5x=true;</script>
<script type="text/javascript" src="http://w.sharethis.com/button/buttons.js">
</script><script type="text/javascript">stLight.options({publisher:'mypubidgoeshere'});</script>
Devo estar usandostLight.locateElements();
ao invés destButtons.locateElements();