繁体   English   中英

如何调整FB.ui流发布对话框的位置

[英]How to adjust position of FB.ui stream publish dialog box

我在Facebook中使用FB.ui方法显示流发布框,如下所示:

function showfeed()
{
   var publish = {
    method: 'stream.publish',
    attachment: {
        name: 'XYZ',
        caption: 'caption here',
        description: ('description'),
        href: 'url',
        media: [{
            type: 'image',
            href: 'url',
            src: 'xyz.gif'
        }]
    },
    action_links: [{ text: 'XYZ', href: 'url' }]
    };  

   FB.ui(publish,null);
}

这可以正常工作,但是我的页面高度很高,所以当我单击按钮显示此对话框时,它显示在页面中心而不是顶部,因此即使对话框显示在中心,也不会显示为im。 对话框上方是否有任何放置位置,以便任何人都可以看到。

将以下代码添加到<style> [从其他论坛上得到了]希望对您有所帮助

div.fb_dialog_advanced+div.fb_dialog_advanced {
top:50px !important;
}

div.fb_dialog_advanced+div.fb_dialog_advanced { top:50px !important; } div.fb_dialog_advanced+div.fb_dialog_advanced { top:50px !important; }不再起作用。 看到这个:

1 旧解决方案

但是我已经解决了jQuery的问题。 这有点hacky,但是可以用:

function move_to_top( value )
{
    $(".fb_dialog").each(function(index) {
        if($(this).css("top")!='-10000px') {
            $(this).css("top", value + 'px' );
        }
    });
    setTimeout( ('move_to_top("'+value+'");'), 1250);
}

function send_request()
{
    FB.Canvas.scrollTo(0,0);
    FB.ui({method: 'apprequests', message: 'Press accept to see this request.', data: 'tracking information for the user'},
        function(response) {
            if(response!=null)
            {
                alert('You are boss')   
            }
    });
    $(".fbProfileBrowserResult").ready( function(){
        t = setTimeout ( ('move_to_top("'+50+'")'), 1250 );
    }); 
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM