Click here to Skip to main content
Licence CPOL
First Posted 28 May 2007
Views 12,691
Downloads 214
Bookmarked 11 times

Fix headers, footer, and left columns of an HTML table

By | 28 May 2007 | Article
How to fix headers, footer, and left columns of an HTML table by calling a JavaScript function.

Introduction

This code helps fix headers, footer, and left columns of an HTML table. The code uses the different possibilities of JavaScript for dynamically adding HTML components and playing with CSS styles.

This works really well on IE 6 (other versions not tested) but with Mozilla / Firefox I didn't manage to obtain the same results: I had to downgrade some functionalities.

If somebody wishes to migrate the IE code so that it works with Mozilla / Firefox, it would be great (I have no time to do it for the moment). In fact, the major problems are that CSS expressions are available only with IE and that relative / absolute position doesn't work the same in Mozilla / Firefox.

Background

The concept is simple: the table is inserted in a DIV, which offers the possibility to have scrollbars. Header, footer, and left columns are positioned relatively, and CSS expressions make them always visible. The DIV and IFRAME are positioned to hide invisible cells and HTML components (IFRAME for select boxes, DIV for everything else).

The code is not simple, and requires JavaScript experience to be improved. But analyzing it is a good way to learn the many possibilities offered by this powerful language.

Using the code

Using this library is very simple : all you have to do is call a JavaScript function on an existing table, without modifying existing code (except adding an HTML ID on your table, if not present).

var t = new ScrollableTable('myScrollTable', height, width, numberLeftColumns);

The included Zip contains the JS library, and an example HTML page presenting several use cases.

History

This code was inspired from this article: http://www.webtoolkit.info/scrollable-html-table.html.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

massamany



France France

Member



Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board. (secure sign-in)
 
Search this forum  
 FAQ
    Noise  Layout  Per page   
  Refresh
-- There are no messages in this forum --
Permalink | Advertise | Privacy | Mobile
Web01 | 2.5.120528.1 | Last Updated 29 May 2007
Article Copyright 2007 by massamany
Everything else Copyright © CodeProject, 1999-2012
Terms of Use
Layout: fixed | fluid