2013-03-19 49 views
0

我正在使用Closureextensively网站。当其他所有内容滚动时,我需要制作一个标题行。我知道如何只用几行代码,为此在jQuery的:jQuery来闭幕(保持头在屏幕上)

$(window).load(function(){ 
    $('#main_box').scroll(function() { 
     $('#header').css({ 
      'top':$('#main_box').scrollTop() 
     }); 
    }); 
}); 

但对我的生活,我不能找出或发现任何文档/教程/例子,说明如何做类似的东西关闭。我如何将转换成Closure?

更新:这是在使用的HTML结构:

<div id="main_box"> 
    <div id="header"></div> 
    <div id="content"></div> 
</div> 
+0

你是什么意思标题行?这是表格的标题行吗?因为没有很好的办法做到这一点的X浏览器(很多黑客的四周,有的甚至工作)。你也都出现不会使头棒jQuery的,它基本上只是禁用滚动main_box元素。 如果你只是想一个元素留在一个固定的位置,那么你应该看看固定的CSS布局。 – gatapia 2013-03-20 03:39:30

+0

@gatapia - 我已经添加的代码使用的HTML结构。标题div包含一个“行”,内容div包含很多“行”。 – Justin808 2013-03-20 17:37:41

回答

1

如果你想获得的东西粘在视口顶部时,页面滚动了过去,看看goog.ui.ScrollFloater - >http://closure-library.googlecode.com/svn/docs/class_goog_ui_ScrollFloater.html

然而,对于这个特殊的例子,你可以做...

var mainBox = goog.dom.getElement("main_box"); 
goog.events.listen(mainBox, goog.events.EventType.SCROLL, function(){ 
    goog.dom.getElement("header").style.top = goog.style.getPageOffsetTop(mainBox); 
}, false, this); 

我不知道该getPageOffsetTop类似于浏览器对scrollTop jQuery中()方法,但我猜东西在风格库(可能goog.style.getClientPosition()) - >http://closure-library.googlecode.com/svn/docs/closure_goog_style_style.js.html