Skip to content

Commit 7fc6b72

Browse files
author
hikki
committed
v3.2
1 parent 23d891e commit 7fc6b72

File tree

1 file changed

+51
-44
lines changed

1 file changed

+51
-44
lines changed

resources/assets/component.js

Lines changed: 51 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1689,59 +1689,66 @@ window.ComponentCascadeLine = class {
16891689
}
16901690

16911691
nodeMovement(dom) {
1692-
dom.addEventListener('mousedown', () => {
1693-
let D = dom.parentNode;
1694-
D.click();
1695-
D.setAttribute('draggable','true');
1696-
D.style.setProperty('border','1px dashed #3c2d2d');
1697-
let aim;
1698-
function f(e){
1699-
e.preventDefault();
1700-
let el = e.target;
1701-
while (true){
1702-
if(el === null)break;
1703-
if(el === D)break;
1704-
if(!(el instanceof HTMLElement) && !(el.tagName === 'svg'))break;
1705-
if(el.getAttribute('drag-area') === 'true')break;
1706-
if(el.tagName === 'BODY')break;
1707-
if(el.getAttribute('drag-zone') === 'true'){
1708-
if(e.type==='dragover'){
1709-
aim = el;
1710-
el.click();
1711-
el.style.setProperty('background', '#bb8f2c');
1712-
}else if(e.type ==='dragleave' && aim instanceof HTMLElement){
1713-
aim.style.removeProperty( 'background');
1714-
aim = null;
1715-
}
1716-
break;
1692+
let D = dom.parentNode;
1693+
let object = this;
1694+
let aim = null;
1695+
function f(e){
1696+
e.preventDefault();
1697+
let el = e.target;
1698+
while (true){
1699+
if(el === null)break;
1700+
if(el === D)break;
1701+
if(!(el instanceof HTMLElement) && !(el.tagName === 'svg'))break;
1702+
if(el.getAttribute('drag-area') === 'true')break;
1703+
if(el.tagName === 'BODY')break;
1704+
if(el.getAttribute('drag-zone') === 'true'){
1705+
if(e.type==='dragover'){
1706+
aim = el;
1707+
el.click();
1708+
el.style.setProperty('background', '#bb8f2c');
1709+
}else if(e.type ==='dragleave' && aim instanceof HTMLElement){
1710+
aim.style.removeProperty( 'background');
1711+
aim = null;
17171712
}
1718-
el = el.parentNode;
1713+
break;
17191714
}
1715+
el = el.parentNode;
1716+
}
1717+
}
1718+
function fc(){
1719+
D.removeAttribute('draggable');
1720+
D.style.removeProperty('border');
1721+
D.removeEventListener('dragend',fc);
1722+
document.removeEventListener('dragover',f);
1723+
document.removeEventListener('dragleave',f);
1724+
if(aim instanceof HTMLElement) {
1725+
aim.style.removeProperty( 'background');
1726+
let stack = parseInt(aim.getAttribute('data-stack'));
1727+
let index = parseInt(aim.getAttribute('data-k'));
1728+
let aim_node_data = object.dimensional_data[stack][index];
1729+
stack = parseInt(D.getAttribute('data-stack'));
1730+
index = parseInt(D.getAttribute('data-k'));
1731+
let node_data = object.dimensional_data[stack][index];
1732+
object.dialog(`<span class="dlp-text title" title="${node_data.val}">${node_data.val}</span> 移动`);
17201733
}
1734+
}
1735+
dom.addEventListener('mousedown', ()=>{
1736+
D.click();
1737+
D.setAttribute('draggable','true');
1738+
D.style.setProperty('border','1px dashed #3c2d2d');
17211739
document.addEventListener('dragover',f);
17221740
document.addEventListener('dragleave',f);
1723-
let object = this;
1724-
function fc(){
1725-
D.removeAttribute('draggable');
1726-
D.style.removeProperty('border');
1727-
D.removeEventListener('dragend',fc);
1728-
document.removeEventListener('dragover',f);
1729-
document.removeEventListener('dragleave',f);
1730-
if(aim instanceof HTMLElement) {
1731-
aim.style.removeProperty( 'background');
1732-
let stack = parseInt(aim.getAttribute('data-stack'));
1733-
let index = parseInt(aim.getAttribute('data-k'));
1734-
let aim_node_data = object.dimensional_data[stack][index];
1735-
stack = parseInt(D.getAttribute('data-stack'));
1736-
index = parseInt(D.getAttribute('data-k'));
1737-
let node_data = object.dimensional_data[stack][index];
1738-
object.dialog(`<span class="dlp-text title" title="${node_data.val}">${node_data.val}</span> 移动`);
1739-
}
1740-
}
17411741
D.addEventListener('dragend',fc);
17421742
});
17431743
dom.addEventListener('mouseup',()=>{
17441744
dom.parentNode.style.removeProperty('border');
1745+
document.removeEventListener('dragover',f);
1746+
document.removeEventListener('dragleave',f);
1747+
D.removeEventListener('dragend',fc);
1748+
if(aim instanceof HTMLElement) {
1749+
aim.style.removeProperty('background');
1750+
aim = null;
1751+
}
17451752
});
17461753
}
17471754
};

0 commit comments

Comments
 (0)