비슷한 질문이 on StackOverflow here입니다.
당신이해야 할 일은 공유 버튼에 대한 명시적인 렌더링 방법을 호출하는 것입니다. div를 선택하는 함수를 다음 코드로 바꾸면 화면상의 공유 객체에 대한 렌더링이 지연됩니다. 각각의 버튼을 렌더링하기 위해
$("#clickme").click(function()
{
gapi.plus.go();
});
, 당신은 예를 들어, 공유하도록 설정 작업 매개 변수를 사용하여 객체를 통과해야합니다 :
gapi.plus.render("plusOne", {action: "share"});
다음은 비동기 스크립트 로딩을 수행하고 렌더링보다 완벽한 예입니다 다양한 공유 대상, 표시 here :
<html>
<body>
<p>
<div data-action="share" class="g-plus" id="plusOne"></div>
<button onClick="gapi.plus.render('plusOne', getParamBag('https://www.google.com'))"></button>
</p>
<p>
<div data-action="share" class="g-plus" id="plusTwo"></div>
<button onClick="gapi.plus.render('plusTwo', getParamBag('https://plus.google.com'))"> </button>
</p>
<p>
<div data-action="share" class="g-plus" id="plusThree"></div>
<button onClick="gapi.plus.render('plusThree', getParamBag('https://developers.google.com'))"></button>
</p>
</body>
<script type="text/javascript">
window.___gcfg = {
lang: 'en-US',
parsetags: 'explicit'
};
(function() {
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
po.src = 'https://apis.google.com/js/plusone.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
})();
function getParamBag(url){
return {
action: "share",
href: url
};
}
</script>
</html>
모든 개체를 렌더링합니다. 하지만 모든 개체를 렌더링 할 필요가 없습니다. 내용을로드 한 후에는 개체 수가 증가하고 "gapi.plus.go()"가 매우 오래로드되어 지연됩니다. –
이 경우에는 gapi.plus.render (div)를 사용하지만 Gus와 같이 정확한 시간에 동적 콘텐츠를 클릭 한 후 또는로드 한 후에 트리거합니다. parsetags : 명시 적 설정도 유지해야합니다. – BrettJ