beforeItemCatch
Description
Fires before an item is caught
info
The event works only in the org chart and mindmap modes of Diagram, the itemsDraggable property must be set to true.
Usage
"beforeItemCatch": ({
id: string | number,
targetId: string | number,
batch: (string | number)[],
event: PointerEvent
}) => boolean | void;
Parameters
The callback of the event is called with an object with the following parameters:
id- the id of the moved itemtargetId- the id of the target itembatch- an array of moved elements' idsevent- an event object
Returns
The callback returns false to prevent the item from being caught; otherwise, true
info
For handling the inner Diagram Editor events you can use the on() method.
Example
// initializing Diagram Editor
const editor = new dhx.DiagramEditor("editor_container");
// loading data
editor.parse(data);
// attaching a handler to the event
editor.events.on("beforeItemCatch", ({ id, targetId }) => {
if (targetId === "2.1"){
console.log(`
Item ${id} won't be be caught by the item "2.1"
`);
return false;
}
else{
console.log(`
Item ${id} will be caught by the item ${targetId}
`);
return true;
}
});
Change log:
- The
batchparameter was added in the v6.0 - The callback function takes an object as a parameter since v6.0