Używam funkcji Fb.ui(), aby opublikować aktualizację do ściany użytkownika, ale okno dialogowe zawsze pojawia się w tym samym miejscu w przeglądarce (środkowy środek, jeśli przewijany w górę). Problem polega na tym, że otwieram okno dialogowe z dołu ekranu. Czy istnieje sposób na wyświetlenie okna dialogowego dla bieżącej lokalizacji przewijania użytkownika?Dostosowywanie położenia okna dialogowego FB.ui()
Odpowiedz
Używam tego fragmentu kodu, aby ustawić pozycję okna na górze strony, ale możesz go użyć do ustawienia pozycji w dowolnym miejscu. Kod ten korzysta z biblioteki jQuery
setInterval(function(){
var dialog = $('.fb_dialog');
for(var i = 0; i < dialog.length; i++)
{
var d = $(dialog[i]);
if(parseInt(d.css('top')) > 0 && parseInt(d.css('top')) != 195)
{
d.css('top', '195px')
}
}
}, 500);
facebooku napisać dialogowe kod HTML do <div class="fb-root"></div>
więc jeśli otaczają go ze <div style="position: absolute;"></div>
okno pojawia się, gdzie umieścić ten kod.
Na przykład:
<div style="position: absolute">
<div class="fb-root"></div>
</div>
jego nie działa – nXqd
Okno FB.ui() powinna być już positionned względem miejsca przewijania użytkownik aktualnie jest.
Jeśli nie, można po prostu umieścić swoje # FB-korzeń w CSS:
#fb-root { position:fixed; top:10%; }
ten sposób, pop-in zawsze będzie na pozycji przewijania użytkownika, a także po nim, jeśli on nadal przewijać w górę lub w dół strony.
iframe lub popup? – Lex