我想在我的Facebook应用程序的iFrame中有一个固定元素(一个DIV)。所以当用户向下滚动页面时,该元素仍然固定在浏览器窗口的顶部?Facebook应用程序iFrame固定元素
基本原理:当您向下滚动时,您可以将东西添加到包中,固定的DIV会在您将这些东西添加到包中时显示您的“得分”。滚动时,“分数计数器”应始终可见。
谢谢!
我想在我的Facebook应用程序的iFrame中有一个固定元素(一个DIV)。所以当用户向下滚动页面时,该元素仍然固定在浏览器窗口的顶部?Facebook应用程序iFrame固定元素
基本原理:当您向下滚动时,您可以将东西添加到包中,固定的DIV会在您将这些东西添加到包中时显示您的“得分”。滚动时,“分数计数器”应始终可见。
谢谢!
如果您使用的是Facebook的iframe自动调整大小功能,这是不可能的。一旦iframe被调整大小以便不需要滚动,则唯一可用的滚动将是父窗口中的一个。但是,子iframe没有关于父窗口滚动的信息(因为它们不在同一个域中),并且试图监听滚动事件或滚动位置将只返回滚动条位于0的位置,或者最上面。
然而,您可以监听点击事件并提取点击事件或单击元素的偏移量。
一些例子:
$('.clickme').click(function(e) {
e.preventDefault();
var top;
// Using click position (e.pageY and e.pageX available)
top = e.pageY;
// Using clicked element position
top = $(this).offset().top;
$('#moveme').css({'top': top - 100 + 'px'}); //
}
也许您可以基于这个原则,而不是互动?
我不知道你的Erik,但这真的对我没有多大帮助。 FB.Canvas.getPageInfo可以帮助吗?
也许这将帮助:我是尤斯
(function() {
var el = $("header:first");
var elpos_original = el.offset().top;
$(window).scroll(function(){
var elpos = el.offset().top;
var windowpos = $(window).scrollTop();
var finaldestination = windowpos;
if(windowpos<elpos_original) {
finaldestination = elpos_original;
el.stop().css({'top':0});
} else {
el.stop().animate({'top':finaldestination-elpos_original},0);
}
});
})();
正常的方法不起作用? http://stackoverflow.com/questions/1216114/how-can-i-make-a-div-stick-to-the-top-of-the-screen-once-its-been-scrolled-to – fingerman 2011-03-28 13:00:48
I不知道?我认为这可能是一个问题,当它在一个iFrame? – 2011-03-28 14:03:29