不幸的是,您不能真正让弹出窗口独立于按钮移动,因为一旦单击按钮,它就会在 iframe 中打开小部件,并且您将无法影响 iframe 的内容而不使用相同的来源政策。显然有很多方法可以规避同源政策,但它可能比这样的事情更令人头疼。
但是,如果您只希望 iframe 在窗口边缘上方打开,您可以像这样移动 iframe:
.fb_iframe_widget iframe {
position:absolute;
top:-165px;
background:#fff; /* in your case you may want to add a white background */
}
您还需要从#footer 中删除溢出:隐藏。
你应该最终得到这个:
我知道这并不理想,但鉴于 Facebook 缺乏对开发人员特别友好的兴趣,它可能会尽可能接近你所追求的。
更新:
将整个小部件包装在一个 div 中,并将 div 放置在您开始使用它的位置。然后你可以使用下面的 CSS 来定位 iframe。
.fb_iframe_widget iframe {
position:absolute;
top:-165px;
background:#fff;
right:10px;
}
@media (min-width:1200px) {
.fb_iframe_widget iframe {
position:absolute;
top:-165px;
background:#fff;
right:-45px;
}
}
@media (max-width:979px) and (min-width: 768px) {
.fb_iframe_widget iframe {
position:absolute;
top:-165px;
background:#fff;
right:110px;
}
}
@media (max-width:767px) {
.fb_iframe_widget iframe {
position:absolute;
top:-165px;
background:#fff;
right:0px;
}
}