大家好,我有一个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很陌生,但要努力。

最佳答案

这绝对是棘手的。 HoverIntent将有助于解决草率的或意外的鼠标移动,但它可能无法解决您的问题。我在这里要写的任何使用方法都只是hoverIntent documentation的复制品。

如果这还不够,我建议您更好地了解jQuery's event object。完成后,您将看到必须使用event.targetevent.currentTarget和/或event.relatedTarget进行大量的微管理。

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

关于javascript - 将hoverIntent与“mousedown”集成,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6048935/

10-10 08:48