我正在尝试制作一个自定义Facebook Share按钮,通过提供我自己的img并将FB.ui()应用到它,但该方法打开对话框说明:
应用程序配置不允许使用URL:应用程序的设置不允许使用一个或多个给定的URL。它必须与网站网址或Canvas网址匹配,或者该网域必须是某个应用网域的子网域。
谁能告诉我我做错了什么?
的index.php:
<head>
<meta property="og:url" content="http://www.example.com" />
<meta property="og:title" content="Why can't I" />
<meta property="og:description" content="get this thing to work" />
<meta property="og:image" content="http://www.example.com/images/whyaretherenoexamplesanywhere.jpg" />
</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";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
// more div's
</body>
在index.php的div中,通过ajax调用加载文件ajaxPage.php。这本身就在其中,一切都很完美。
在此文件中,图像作为按钮存在,由.click()方法绑定,它们一起提示对话以进行共享:
ajaxPage.php:
// In de DOM:
<img class="customFacebookIcon" src="enoughwiththefunnynames.jpg"/>
// In the <script>:
$('.customFacebookIcon').click(function(){
FB.ui({
method: 'share',
appId: '12345678901234567890',
href: 'http://www.example.com',
}, function(response){});
});