我刚从开发者网站添加了Facebook like / share按钮。由于某种原因,除非您重新加载页面,否则按钮不会显示在任何页面上。这是我对Javascript的看法
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.6";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
这里是实际喜欢/分享按钮的div
<div class="fb-like" data-href="http://localhost:3000/parts" data-layout="button_count"data-action="like" data-show-faces="true" data-share="true"></div>
这里有什么我需要从开发网站更改以使按钮显示而无需重新加载页面?感谢您的帮助。
更新
我的Turbolinks被禁用可能会影响到这一点。有没有办法让这个没有涡轮增压链接工作?
更新
如果它有助于我的javascript和按钮div都在<body>
标签中,而链接预览位于<head>
<head>
<!-- You can use open graph tags to customize link previews.
Learn more: https://developers.facebook.com/docs/sharing/webmasters -->
<meta property="og:url" content="http://http://localhost:3000/parts" />
<meta property="og:type" content="website" />
<meta property="og:title" content="JMR" />
<meta property="og:description" content="Garage" />
<meta property="og:image" content="" />
</head>
<body>
<div id="fb-root"></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.6";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<h4><%= part.name %></small></h4>
<div class="fb-like" data-href="https://developers.facebook.com/docs/plugins/" data-width="50" data-layout="standard"
data-action="like" data-show-faces="true" data-share="true"></div>
</body>