change.js
来自「jsTree是一个基于jQuery的Tree控件。支持XML」· JavaScript 代码 · 共 31 行
JS
31 行
onchange : function (NODE, TREE_OBJ) {
var $this = $(NODE).is("li") ? $(NODE) : $(NODE).parent();
if($this.children("a.unchecked").size() == 0) {
TREE_OBJ.container.find("a").addClass("unchecked");
}
$this.children("a").removeClass("clicked");
if($this.children("a").hasClass("checked")) {
$this.find("li").andSelf().children("a").removeClass("checked").removeClass("undetermined").addClass("unchecked");
var state = 0;
}
else {
$this.find("li").andSelf().children("a").removeClass("unchecked").removeClass("undetermined").addClass("checked");
var state = 1;
}
$this.parents("li").each(function () {
if(state == 1) {
if($(this).find("a.unchecked, a.undetermined").size() - 1 > 0) {
$(this).parents("li").andSelf().children("a").removeClass("unchecked").removeClass("checked").addClass("undetermined");
return false;
}
else $(this).children("a").removeClass("unchecked").removeClass("undetermined").addClass("checked");
}
else {
if($(this).find("a.checked, a.undetermined").size() - 1 > 0) {
$(this).parents("li").andSelf().children("a").removeClass("unchecked").removeClass("checked").addClass("undetermined");
return false;
}
else $(this).children("a").removeClass("checked").removeClass("undetermined").addClass("unchecked");
}
});
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?