On 10/30/06, "Jörn Zaefferer" <[EMAIL PROTECTED]> wrote: > > has anyone made this as (part of) a plugin? > > > > It would seem to be commonly requested - to help visulisation of a large > > table. > > Try this: > (function($) { > var current; > function findColumn(element) { > > } > $.fn.columnHoverClass = (function(className) { > $('td', this).hover(function() { > var index = $(this).parent().children().index(this); > current = $(this).parent().parent().find('tr > > td:nth-child('+index+')'); > current.addClass(className); > }, function() { > current.removeClass(className); > }); > return this; > }); > })(jQuery); > > $('table').columnHoverClass('hover'); > > Haven't tested it with big tables, yet.
I tried a similar approach wich resulted in a really bad performance. There is a `cellIndex` property in every table cell. That coud be used to improve performance (providing a workaround for browsers that don't support it). So... (workaround not included) (function($) { var current; $.fn.columnHoverClass = (function(className) { $('td', this).hover(function() { current = $(this.parentNode.parentNode).find('tr > td:nth-child('+this.cellIndex+')').addClass(className); }, function() { current.removeClass(className); }); return this; }); })(jQuery); By the way, I _suspect_ that `$(this.parentNode.parentNode)` will result in a better performance than `$(this).parent().parent()`. -- Choan <http://choangalvez.nom.es/> _______________________________________________ jQuery mailing list discuss@jquery.com http://jquery.com/discuss/