首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在新的JavaScript SDK中显示弹出窗口

在新的JavaScript SDK中显示弹出窗口
EN

Stack Overflow用户
提问于 2010-04-26 20:25:44
回答 9查看 21.6K关注 0票数 3

我曾经在我的网站上有一个href。当用户点击它时,一个多好友选择器就会出现,这样他们就可以邀请他们的朋友来我的网站。这是使用以下代码完成的:

代码语言:javascript
复制
 FB.ensureInit(function() {
        var dialog = new FB.UI.FBMLPopupDialog('XXXXXXX', '');
        var fbml = 'Multi-Friend-Selector FBML'
        dialog.setFBMLContent(fbml);
        dialog.setContentWidth(620);
        dialog.setContentHeight(570);
        dialog.show();
    });

现在,我正在使用新的JavaScript软件开发工具包(http://connect.facebook.net/en_US/all.js),但是旧的方法不存在……

新的SDK该怎么做呢?

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2010-05-20 16:37:13

是的,终于让这个烦人的盒子从原来的964像素调整大小了:

对于兼容性(让我们希望它在未来会得到修复,或者更好地记录),我仍然认为

代码语言:javascript
复制
size:(width:600,height:500),

但随后我将width和height作为父对象的属性,所以在最后使用:

代码语言:javascript
复制
size:(width:600,height:500),width:600,height:500, ...

现在,它还可以使用您选择的JavaScript库来调整大小,也就是说,这是一个使用jQuery调整大小的示例:

代码语言:javascript
复制
FB.ui({
    method: 'fbml.dialog',
    fbml: (
         '<div style="width:480px;border:1px black solid;">A small JavaScript library that allows you to harness ' +
         'the power of Facebook, bringing the user\'s identity, ' +
         'social graph and distribution power to your site.</div>'
       ),
    size: {width:640,height:480}, width:640, height:480
});
$(".FB_UI_Dialog").css('width', $(window).width()*0.8); // 80% of window width
// I'm also sure you could stack this call if you wanted to
票数 7
EN

Stack Overflow用户

发布于 2010-04-29 23:34:20

好吧,经过两天(因为我不是JavaScript专家:P )阅读开源的Facebook JavaScript SDK,我找到了一个方法:

代码语言:javascript
复制
FB.ui({
            method : 'fbml.dialog',
            fbml: '<fb:fbml>' +
                  '<fb:request-form action=......',
        });

这看起来很简单,是的,我知道,但现在的问题是,当我发送邀请时,我会打开一个新的选项卡,离开“对话框”(在Facebook的术语中,因为弹出窗口对他们来说是另一回事!)打开!

所以我还在努力,但我会找到答案的!

票数 1
EN

Stack Overflow用户

发布于 2010-05-17 07:05:57

这对我很有效..

代码语言:javascript
复制
FB.ui({method:'fbml.dialog', fbml:'<fb:request-form action="URL" method="post" invite="true" type="TYPE" content="THIS IS THE MESSAGE <fb:req-choice url=\'URL\'label=\'Accept\' />" <fb:multi-friend-selector showborder="false" actiontext="REQUEST FORM TITLE" /> </fb:request-form>'})});

用你的内容替换大写字母。

我唯一的问题是我不知道如何调整对话框的大小以适应内容。它保持在964px。我尝试过很多版本的

代码语言:javascript
复制
size:(width:600,height:500),

有什么想法吗?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2713379

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档