簡體   English   中英

如何在可折疊樹的d3.js子項上添加click事件?

[英]How to add click event on d3.js child of collapsible tree?

我正在從這里使用d3.js來折疊樹結構
在此處輸入圖片說明 現在,我的目標是在最后一個孩子(即 A的兒子A的 女兒 上添加一個點擊事件
例如,我需要在單擊無子節點上創建一個警報框。

我試圖在click函數中添加一個條件,但是它僅在第二次單擊時有效,而我不明白為什么警報框在第一次單擊時不會上升。

有人可以解釋一下為什么嗎? 正確的方法是什么?

我的點擊功能

function click(d) {
if (d.children) {
    d._children = d.children;
    d.children = null;

  } else {
    d.children = d._children;
    d._children = null;
    if (d.children === null){
        alert(d.id);
    }
  }
update(d);
}

而不是使用

if (d.children === null){
    alert(d.id);
}

采用

if (!d.children){
    alert(d.id);
}

這是因為d.childrenundefined但是您正在檢查null 由於undefinednull等於false !d.children檢查將成功。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM