jsmind 添加节点
时间: 2023-06-23 18:49:51 浏览: 288
要在jsmind中添加一个新节点,可以使用以下代码:
```javascript
var new_node = {
"id": "new_node_id",
"topic": "New Node",
"parentid": "parent_node_id",
"direction": "right",
"expanded": true,
"data": {}
};
var selected_node = my_jsmind.get_selected_node(); // 获取当前选中的节点
my_jsmind.add_node(selected_node, new_node); // 在选中的节点下添加新的节点
```
其中,`new_node`是一个包含新节点信息的对象,包括节点id、节点标题、父节点id、方向、是否展开等属性。`selected_node`是当前选中的节点对象,可以通过`my_jsmind.get_selected_node()`方法获取。`my_jsmind.add_node`方法用于在指定的父节点下添加新节点。
需要注意的是,添加节点后需要调用`my_jsmind.view.refresh()`方法重新渲染思维导图视图。
相关问题
jsmind 点击节点打印id
您可以使用以下代码为 JSMind 添加点击事件,并打印所点击节点的 ID:
```
// 获取 JSMind 实例
var jm = jsMind.show(options, mind_data);
// 为节点添加点击事件
jm.view.addEvent(jm.view.container,'click',function(e){
var element = e.target || e.srcElement;
var nodeId = jm.view.getBindedNodeId(element);
if(nodeId){
console.log("Clicked node ID: " + nodeId);
}
});
```
首先获取 JSMind 实例,然后通过 `jm.view.addEvent()` 方法为 JSMind 添加点击事件。在点击事件中,通过 `jm.view.getBindedNodeId()` 方法获取所点击节点的 ID,并将其打印在控制台中。
jsmind中怎么知道添加节点的输入框的enter事件
在jsmind中,要知道添加节点的输入框的enter事件,可以通过以下步骤:
1. 找到添加节点的输入框所在的HTML元素,并获取其DOM对象。
2. 给该DOM对象绑定keydown事件,监听用户的键盘操作。
3. 在keydown事件中,判断按下的键是否为enter键,如果是则执行添加节点的操作。
下面是一个示例代码:
```javascript
var input_box = document.getElementById('add-node-input'); // 获取输入框DOM对象
input_box.addEventListener('keydown', function(event) { // 绑定keydown事件
if (event.keyCode === 13) { // 判断是否按下enter键
var node_text = input_box.value; // 获取输入框的值
// 执行添加节点的操作,例如:
var new_node = mind.add_node(parent_node, node_text);
// ...
}
});
```
在上面的代码中,我们通过addEventListener方法给输入框绑定了keydown事件,并在事件处理函数中判断了按下的键是否为enter键,如果是则执行添加节点的操作。需要注意的是,我们在获取输入框的值之后,需要根据实际情况执行相应的节点操作,例如添加节点、更新节点等。
阅读全文