func.js
1.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
const func = {
clearHoverStatus() {
let rows = document.querySelectorAll('.tree-row')
for (let i = 0; i < rows.length; i++) {
const row = rows[i]
const hoverBlock = row.children[row.children.length - 1]
hoverBlock.style.display = 'none'
hoverBlock.children[0].style.opacity = 0.1
hoverBlock.children[1].style.opacity = 0.1
hoverBlock.children[2].style.opacity = 0.1
}
},
getElementTop(element, tableRef) {
// 固定表头,需要做特殊计算
let scrollTop = tableRef.querySelector('.drag-tree-table-body').scrollTop
let actualTop = element.offsetTop - scrollTop
let current = element.offsetParent
while (current !== null) {
actualTop += current.offsetTop
current = current.offsetParent
}
return actualTop
},
getElementLeft(element) {
let actualLeft = element.offsetLeft
let current = element.offsetParent
while (current !== null) {
actualLeft += current.offsetLeft
current = current.offsetParent
}
return actualLeft
},
deepClone(aObject) {
if (!aObject) {
return aObject
}
let bObject, v, k
bObject = Array.isArray(aObject) ? [] : {}
for (k in aObject) {
v = aObject[k]
bObject[k] = (typeof v === 'object') ? func.deepClone(v) : v
}
return bObject
}
}
export default func