推特按钮和信息窗口

Tweet button and infoWindow

本文关键字:信息窗 窗口 信息 按钮      更新时间:2023-09-26

我想将Tweet按钮集成到谷歌地图v3信息窗口(infoBox)中,但我没有成功。当然,我使用的脚本在一个简单的页面上工作。我在模板文件中设置了twitter的js,并在gmaps javascript文件中为html变量添加了锚点:。。。推特…

如果我将鼠标悬停在锚链接上,现在只能看到"推文"文本,并且看不到推文抓图按钮。如果我点击这个按钮,Twitter网站会加载但不会共享任何内容。

使用"点赞Facebook"按钮,我必须实现一行代码,以确定"domready"事件是否运行。

如何在Twitter上做到这一点?

我遇到了同样的问题,但离解决它越来越近了。

我猜您使用的是标准的Twitter示例,其中添加了<a>标签,如:

<a href="https://twitter.com/share" class="twitter-share-button" 
data-lang="en">Tweet</a>

然后需要让他们的JavaScript加载:

<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];
if(!d.getElementById(id)){js=d.createElement(s);js.id=id;
js.src="//platform.twitter.com/widgets.js";
fjs.parentNode.insertBefore(js,fjs);
}}(document,"script","twitter-wjs");</script>

因此,问题可能是infoWindow没有连接到DOM。

GoogleMapsV3neneneba API InfoWindow类有一个事件"domready"。

所以,如果你像我一样使用jQuery,那么你需要做一些事情,比如:

google.maps.event.addListener(bubble, 'domready', function(event) {
        !function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];
        if(!d.getElementById(id)){js=d.createElement(s);js.id=id;
        js.src="//platform.twitter.com/widgets.js";
        fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
});

记住,我还没有做到这一点:)

让我们来解决这个笨蛋!

只要更改InfoWindow对象名称的infobox,gyaresu的答案就可以了,但它只能工作一次。

google.maps.event.addListener(infobox, 'domready', function(event) {
    FB.XFBML.parse();
    twttr.widgets.load();
});