1

大家好,我有一个 HTML 表格,我正在尝试创建一些 Excel 样式的功能,例如复制和选择单元格等。我有一些很酷的效果(在表格单元格上使用 jQuery 的 mousedown),但它太跳跃了。我了解了 hoverIntent,但我不知道如何实现它。它如何适应这个(简化的复制功能):

$("table#grid td").mousedown(function () {
    // this cell has the value to copy; retrieve and store it
    mouseDown = true;
}).mouseover(function () {
    if(mouseDown) {
        // copy value into this cell
    }
};

$(document).mouseup(function () {
    mouseDown = false;
    // reset copy info
}

问题是它会在跨越 td 边界时多次(有时)注册鼠标悬停,这使得格式化选中/取消选中的单元格成为一场噩梦。

我希望这是有道理的。我对 jQuery 很陌生,但很努力。

4

1 回答 1

0

这绝对是棘手的。HoverIntent 将有助于解决马虎或意外鼠标,但它可能无法解决您的问题。我在这里写的关于如何使用它的任何内容都只是对hoverIntent 文档的复制。

如果这还不够,我建议您更好地熟悉jQuery 的事件对象。一旦你这样做了,你会发现你必须做一些很好的微观管理,使用event.targetevent.currentTarget和/或event.relatedTarget

换句话说,将您的事件目标与单元格格式(可能还有所选单元格的日志)进行比较,以确定给定的鼠标悬停触发器是否“失火”。

于 2011-05-18T21:47:30.940 回答