所以我会继续工作Handsontable jQuery插件目前一个项目,我已经写了一些自定义的功能与它合作。
我目前遇到的麻烦的功能是一个我写返回当前选定单元格(当用户只选择一个,而不是多了,是被检查)。
这里是我的代码:
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;
}
但是,每当我调用该函数,例如:
var cell = getCurrentCell();
然后试图alert(cell)
或console.log(cell)
,我得到一个false
返回值。
我最初的想法是,不知怎的,坐标将被关闭,因此没有元素会被发现符合条件的,所以我试图通过增加检查...
$(this).css('background-color', 'black');
...权之前return this
行。 这样一来,如果有合适的表格单元格被发现,它会显示在屏幕上的代码实际上返回之前。 有趣的是,正确的电池总是有其背景颜色适当地改变。 所以,这个功能是找到正确的细胞,它是执行,如果循环内的代码,但是当我尝试获取返回值到一个变量,该变量始终是假的。
任何帮助将是巨大的! 太感谢!