【问题标题】:Highlighting table cells for a single row on mouse drag在鼠标拖动时突出显示单行的表格单元格
【发布时间】:2013-07-05 12:50:43
【问题描述】:

我想要做的是允许用户在将鼠标拖到表格上时突出显示表格中的单元格,这与问答Select Cells On A Table By Dragging中概述的非常相似

我需要做的是限制拖动/突出显示效果跨越多于一列。例如用户在哪一列开始拖动事件时无法突出显示该列。

有人对如何实现这一点有任何想法吗?

【问题讨论】:

  • 使用if 声明?在第一个 mouseDown 事件上获取列,并且仅将拖动事件应用于同一列中的元素...

标签: javascript jquery draggable


【解决方案1】:

以另一个问题中的示例为例,您应该给“td”元素一个属性,如 data-row 和 data-col,然后当有人选择存储当前 data-col 并防止用户可以选择具有不同 data-col 值的其他列。

我在以下链接中放置了一个工作代码,您可以将其更改为仅适用于行。

Working example

你需要使用getAttribute方法:

element.getAttribute("data-col")

【讨论】:

  • 这不会将突出显示限制在您选择的第一列。您可以通过拖动突出显示整个表格。
【解决方案2】:

当你高亮第一个时,设置一个布尔值,比如 isHighlighted = true;然后在您的实际突出显示中执行

if(isHighlighted == false){
    ///do highlighting
}

当您取消选择第一个框时,只需将布尔值设置为 false。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-07
    • 1970-01-01
    • 2015-11-03
    • 1970-01-01
    相关资源
    最近更新 更多