Dojo dijit/Tree的使用以及样式设置
如果什么都不设置,默认使用dojo自带的Tree,样式模板使用claro的,效果是这样的。

1、无论是不是叶子节点,前面总要带个+号,必须要点击下才消失。
2、点击树或者某个节点是,回出现蓝色边框。
3、默认的文件夹图标也不好看。
根据项目需要,经过摸索,最后修改成了这样子,已经面目全非。

至少看着不那么像官方的树样式了。
主要修改了一下内容。
一、对Css代码的修改。
/* Tree的样式----------------------------------------------------------------------*/
.claro .dijitTreeRow, .claro .dijitTreeNode .dojoDndItemBefore, .claro .dijitTreeNode .dojoDndItemAfter {
color: #ffffff;
padding: 4px;
font-size: 14px;
} .claro .dijitTreeRowHover {
background-color: #626262;
background-image: none;
border-width: 0px;
padding: 4px;
} .claro .dijitTreeRowSelected {
background-color: #626262;
background-image: none;
border-width: 0px;
padding: 4px;
} .dijitTreeLabel {
outline: none;
} .dijitTree {
outline: none;
} .claro .dijitTreeExpando {
background-image: url(Res/Images/ArrowDown16.png);
background-position: 0 0;
} .claro .dijitTreeRowHover .dijitTreeExpandoOpened {
background-image: url(Res/Images/ArrowDown16.png);
width: 16px;
height: 16px;
background-position: 0 0;
} .claro .dijitTreeRowHover .dijitTreeExpandoClosed {
background-position: 0 0;
} .claro .dijitTreeExpandoClosed {
background-image: url(Res/Images/ArrowRight16.png);
width: 16px;
height: 16px;
background-position: 0 0;
} .claro .dijitTreeExpandoLeaf, .dj_ie6 .claro .dijitTreeExpandoLeaf {
width: 0px;
height: 0px;
}
/* Tree的样式----------------------------------------------------------------------*/
这些样式通过Google浏览器进行调试时都可以看到,自己摸索着修改成自己满意的样式即可。
二、Js代码模块的修改。
var myStore = new Memory({
data: pBDataSet,
getChildren: function (object) {
return this.query({ parent: object.id });
}
});
// Create the model
var myModel = new ObjectStoreModel({
store: myStore,
query: { id: "Root" },
mayHaveChildren: function (pItem) {
if (pItem.type == "DataGroup") {
return true;
}
else {
return false;
}
}
});
// Create the Tree.
var myTree = new Tree({
model: myModel,
showRoot: false,
openOnClick: true,
getIconStyle: function (pItem, opened) {
if (pItem.type == "DataGroup") {
return { width: "0px" };
}
else {
return {
width: "9px",
height: "9px",
"background-image": "url(Res/Images/Right9.png)",
"background-position": "0px"
};
}
},
});
myTree.placeAt(this.UI_TreeContainer_Div);
myTree.startup()
修改节点前面的图标主要是扩展了Tree的getIcoStyle函数。
叶子节点不显示-号主要修改了ObjectStoreModel的mayHaveChildren函数。
Dojo dijit/Tree的使用以及样式设置的更多相关文章
- 使用dojo的tree
dojo的Tree非常是灵活,可是官方站点上的样例却非常少,并且也比較分散,兴许将持续完好本样例. 总的来说,要使用tree,要接触到三个类:"dojo/store/JsonRest&quo ...
- dojo创建tree
今天介绍dojo目录树的效果,效果如下图: HTML代码如下: <body class="claro"> <div id="rootlessTree&q ...
- js学习进阶-元素获取及样式设置
var imgs = document.querySelectorAll("article img"); 获得article元素的直接或间接子孙的所有img元素, <arti ...
- placeholder的样式设置
在input框中有时想将输入的字和placeholder设为不同的颜色或其它效果,这时就可以用以下代码来对placeholder进行样式设置了. ::-webkit-input-placeholder ...
- Asp.Net中应用Aspose.Cells输出报表到Excel 及样式设置
解决思路: 1.找个可用的Aspose.Cells(有钱还是买个正版吧,谁开发个东西也不容易): 2.在.Net方案中引用此Cells: 3.写个函数ToExcel(传递一个DataTable),可以 ...
- 导出Excel之Epplus使用教程2(样式设置)
导出Excel之Epplus使用教程1(基本介绍) 导出Excel之Epplus使用教程2(样式设置) 导出Excel之Epplus使用教程3(图表设置) 导出Excel之Epplus使用教程4(其他 ...
- PowerDesigner的样式设置
原文:PowerDesigner的样式设置 PD提供了强大的配置功能,可以对生成的数据库对象命名.数据模型的展现进行设置.这里首先讲下样式的设置. 颜色和字体设置 1.单独设置某个对象的颜色和字体 1 ...
- POI Excel导出样式设置
HSSFSheet sheet = workbook.createSheet("sheetName"); //创建sheet sheet.setVerticallyCente ...
- QListWidget与QTableWidget的使用以及样式设置
QListWidget和QTableWidget的使用和属性,QTableWidget和QListWidget样式表的设置,滚动条的样式设置 一.QListWidget的使用 //一.QListWid ...
- HTML+CSS样式设置——CSS一学就会
HTML+CSS样式设置 CSS:(Cascading Style Sheets)层叠样式设置表. 网页的展示效果跟其排版有非常大的关系.排版则主要依靠CSS来设置.调节. 以下说CSS与HTML的联 ...
随机推荐
- UEC++ 接口
词义广泛,用来陈述功能,选项,与其他程序结构进行沟通的方式.接口抽象出了交互结构,提供了两个未知逻辑交互的便捷性.对于编程中,如何更好的设计低耦合程序起到了至关重要的作用.设计者可以在互不关心的情况下 ...
- kube-scheduler 调度调优
文章转载自:https://www.kuboard.cn/learning/k8s-advanced/schedule/tuning.html kube-scheduler 是 Kubernetes ...
- Redis的web管理界面redis-manager
下载 下载地址:https://github.com/ngbdf/redis-manager/releases 配置 tar -zxv -f redis-manager-2.3.2.2-RELEASE ...
- 修改NodePort的范围
在 Kubernetes 集群中,NodePort 默认范围是 30000-32767,某些情况下,因为您所在公司的网络策略限制,您可能需要修改 NodePort 的端口范围 修改kube-apise ...
- nsis新插件:Aero.dll
可以使安装界面在 win7 Aero特效下非客户区透明并美化BrandingText定义的字串 下载:http://nsis.sourceforge.net/Aero_plug-in nsis交流群: ...
- Linux+Proton without Steam玩火影忍者究极风暴4指南
首先你需要Proton7.0 without Steam,使用说明和下载链接看这里https://www.cnblogs.com/tubentubentu/p/16716612.html 启动游戏的命 ...
- Redis实现布隆过滤器解析
布隆过滤器原理介绍 [1]概念说明 1)布隆过滤器(Bloom Filter)是1970年由布隆提出的.它实际上是一个很长的二进制向量和一系列随机映射函数.布隆过滤器可以用于检索一个元素是否在一个集合 ...
- 强国杯东杯分区赛miscwp
目录 不要被迷惑 PCAP文件分析 平正开 不要被迷惑 编辑 导出http 编辑 得到flag.zip后直接爆破密码 编辑 得到编辑 然后一键解码 编辑 flag{WImuJeqSNPh ...
- React + Springboot + Quartz,从0实现Excel报表自动化
一.项目背景 企业日常工作中需要制作大量的报表,比如商品的销量.销售额.库存详情.员工打卡信息.保险报销.办公用品采购.差旅报销.项目进度等等,都需要制作统计图表以更直观地查阅.但是报表的制作往往需要 ...
- java中的栈(利用数组实现栈)
java中的栈(利用数组实现栈) 常见的数据结构:https://blog.csdn.net/weixin_43304253/article/details/119764275 栈的介绍 1.栈的英文 ...