大家好,我有一个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.target
,event.currentTarget
和/或event.relatedTarget
进行大量的微管理。
换句话说,将事件目标与单元格格式(可能还有所选单元格的日志)进行比较,以确定给定的鼠标悬停触发器是否为“失火”。
关于javascript - 将hoverIntent与“mousedown”集成,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6048935/