Javascript function fails to return element
===

So I'm working with the [Handsontable][1] jQuery plugin for a project at the moment, and I've written some custom functions to work with it. 

The function I'm currently having trouble with is one I've written to return the currently selected cell(when the user has only selected one, not multiple, and yes that is checked for).

Here is my code:

    function getCurrentCell(){
	    var selection = $('div.current');
	    var left = selection.offset().left;
	    var right = left + selection.width();
	    var top = selection.offset().top;
	    var bottom = top + selection.height();
	    $('div.active').find('table').find('td').each(function(){
	        if($(this).offset().left >= left && $(this).offset().left <= right && $(this).offset().top >= top && $(this).offset().top <= bottom){
	            return this;
		    }
	    });
	    return false;
    }

However, whenever I call the function such as:

    var cell = getCurrentCell();

And then attempt to `alert(cell)` or `console.log(cell)`, I get a `false` return value.

My initial thought would be that somehow the coordinates would be off, and therefore no element would be found matching the criteria, so I attempted to check by adding...

    $(this).css('background-color', 'black');

...right before the `return this` line. That way, if the right table cell is found, it will show up on screen before actually returning in code. Funny thing is, the correct cell *always* has its background color changed properly. So, this function *is* finding the correct cell, and it is executing the code within the if loop, but when I try and capture the return value into a variable, that variable is always false. 

Any help would be great! Thanks SO!


  [1]: http://warpech.github.com/jquery-handsontable/