FB.ui and setting popup size

2019-03-31 06:10发布

问题:

I am using FB.ui with the display parameter set to popup.

When the method is 'stream.publish', it autoresizes when the content is loaded. However, when using 'fbml.dialog' (in order to display a multi-friend selector) it shows a size that I'm not able to change (and the content is displayed cropped).

I have tried with the following approaches, with no luck:

FB.ui({
method: 'fbml.dialog',
size: {width: 800, height: 500},
...

FB.ui({
method: 'fbml.dialog',
width: 800,
height: 500,
...

Also I've been looking at the API source code, and it declares the method this way:

Method declaration:

'fbml.dialog': {
    size : { width: 575, height: 300 },
    url : 'render_fbml.php',
    loggedOutIframe : true
}...

Functions that executes the methods:

// the basic call data
var call = {
  cb : cb,
  id : id,
  size : method.size || {},
  url : FB._domain.www + method.url,
  params : params
};

Any help would be much appreciated...

回答1:

I've used a bit of a hacky workaround until they fix this:

http://pastebin.com/Qwu0bEed



回答2:

if you change it to

display: 'dialog'

it will resize correctly



回答3:

Use

FB.UIServer.Methods["fbml.dialog"].size = {width:640, height:400};