Javascript 仅选择html表的一部分

Javascript 仅选择html表的一部分,javascript,html-table,Javascript,Html Table,我需要在浏览器中创建一个表,从中可以选择数据并将其复制出来。 也可以粘贴数据。 当你有一张10x10的桌子时,你应该能够从中间选择4x4的正方形并把它复制出来。 与在中粘贴数据相同。 对于HTML表格,当您选择数据时,它将从中间进行选择,但如果向下或对角移动光标,它将按行进行选择 选择应如何工作的示例类似于 如何实现这一点的想法?我决定稍微弄乱一下,然后想出了这个。这并不完美,但你可以了解我要做的事情的要点: var i_init=-1; var j_init=-1; var i_final=

我需要在浏览器中创建一个表,从中可以选择数据并将其复制出来。 也可以粘贴数据。 当你有一张10x10的桌子时,你应该能够从中间选择4x4的正方形并把它复制出来。 与在中粘贴数据相同。 对于HTML表格,当您选择数据时,它将从中间进行选择,但如果向下或对角移动光标,它将按行进行选择

选择应如何工作的示例类似于


如何实现这一点的想法?

我决定稍微弄乱一下,然后想出了这个。这并不完美,但你可以了解我要做的事情的要点:

var i_init=-1;
var j_init=-1;
var i_final=-1;
var j_final=-1;
var=false;
var tableRows=document.getElementsByTagName('tr');
for(设i=0;i让i_compare=(i>=i_init&&i=j_init&&j)这只是一个想法,但您可以在每个td元素上都有一个“mouseover”事件。每个td元素都有一个i和j值,指示它们在表上的高度和宽度。选择时,您可以得到起始索引(i_init和j_init)和结束索引(i_final和j_final)减去这两个值得到宽度和高度,然后将其与i_init和j_init相加得到完整的框。然后查看哪些值(i和j)落在框下,并高亮显示它们或其他。如果你想更别致,你可以根据最小值和最大值(i和j)得到所有的外边缘,并在其上绘制边框