简介:我的问题是通过share_open_graph方法让FB.ui根据用户在页面上的操作创build一个包含不同标题,描述和图片的自定义共享对话框。 问题是我的第一个,我没有声望,所以无数的链接被删除,但(感谢大家谁给了我upvotes)我已经能够拯救截图,最初失踪。 编辑:我结束了不得不使用一个普通的popup窗口与共享对话框,它不是理想的,但至less它可靠地工作。 我越查看networking,我越发现许多备受尊崇的网站仍然使用这种popup式共享,所以我认为在这种情况下,使用传统解决scheme的优势超过了寻找适当解决scheme的广泛工作,我使用https://developers.facebook.com/docs/sharing/reference/feed-dialog/v2.2通过URL查询提供的dynamic详细信息,至less比sharer.php的使用情况更新看着Buzzfeed。 我的页面: 我有一个测验。 十个问题,每个答案五个,结果产生五个选项中的一个作为“结果”。 测验的一切都很好。 当通过Ajax / jQuery完成测验时,结果会被拉进来 – 这样我们将来可以为其他人构build一个基于PHP的前端来pipe理测验的创build。 虽然我很高兴在下面的代码中提供页面的URL,但是很抱歉 – 直到我解决这个问题,我无法公开发布,所以你不能访问它! 我的目标: 当显示测验的结果时,还应该有Facebook和Twitter共享button,这些button被定制为包括适合用户测验结果的图片,标题和描述。 Twitterbutton很容易做到dynamic 我只是使用jQuery创build一个Twitterbutton,使用与任何地方相同的HTML,我的dynamic描述作为data-text属性提供,然后调用twttr.widgets.load(); 激活button。 Facebook分享button是问题 我不能添加一个“正常的”共享button – 它只有一个属性,URL(不会改变每个测验结果)。 我无法更改页面上存在的通用Open Graph标记,尽pipejQuery可以做到这一点,但是Facebook的caching意味着它没有意义。 此外,每个页面上的通用共享button(FB / Twitter / G +)应该保持不受影响,并始终共享默认的OG标签。 所以我正在做的是创build一个链接,并用jQuery将其附加到页面上,然后用jQuery设置点击触发器动作。 应用程序ID已经用FB.init()代码块成功设置。 这些是我尝试点击触发器的方法: 尝试1: FB.ui({ method: "feed" }) FB.ui({ method: 'feed', name: "I got "+response.country+"! Which European are you destined to date?", […]
我有这个代码,假设工作,但不起作用。 如果这对你有帮助,那将是很棒的。 <script src='http://connect.facebook.net/en_US/all.js'></script> <p><a onclick='postToFeed(); return false;'><img src="images/fb.png" /></a></p> <p id='msg'></p> <script> FB.init({appId: "338334836292077", status: true, cookie: true}); function postToFeed() { // calling the API … var obj = { method: 'feed', redirect_uri:'https://www.facebook.com/cryswashington?fref=ts', link:'https://developers.facebook.com/docs/reference/dialogs/', picture: '../f8.jpg', name: 'Facebook Dialogs', caption: 'Reference Documentation', description: 'Using Dialogs to interact with users.' }; function callback(response) { document.getElementById('msg').innerHTML […]
我在我的html页面中使用了这个… <script> window.fbAsyncInit = function() { // init the FB JS SDK FB.init({ appId : 'xxxxxxxxxxxxxx', // App ID from the App Dashboard status : true, // check the login status upon init? cookie : true, // set sessions cookies to allow your server to access the session? xfbml : true // parse XFBML tags […]