国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

純javascript響應式樹形菜單效果

2019-11-20 11:18:52
字體:
來源:轉載
供稿:網友

簡要教程
aimaraJS是一款非常實用的純javascript響應式多級目錄樹結構插件。該目錄樹可以動態添加和刪除樹節點,可以制作多級樹結構,每個節點上可以都帶有右鍵上下文菜單,并且每個節點上都可以配置不同的圖標。它的特點有:

  • 可以創建一個基本的樹結構并渲染它。
  • 可以實時添加和刪除樹節點。
  • 可以顯示不同的樹節點圖標。
  • 在樹節點打開和關閉的時候可以自定義事件。
  • 每個樹節點上都可以制作右鍵上下文菜單。

 

使用方法
使用該幻燈片插件需要在頁面中引入Aimara.css和Aimara.js文件。

<link rel="stylesheet" href="css/Aimara.css" /><script src="js/Aimara.js"></script>       

 HTML結構

可以使用一個空的<div>來作為這個目錄樹的容器。

<div id="div_tree"></div>       

JAVASCRIPT

然后你可以通過下面的方法來初始化該目錄樹插件。你可以創建一些樹節點和子節點,然后渲染它們。節點可以在樹被渲染之前或之后添加到樹結構中。

<script type="text/javascript">  window.onload = function() {    //創建樹結構    var tree = createTree('div_tree','white');    //創建樹節點node1    var node1 = tree.createNode('First node',false,'images/star.png',null,null,null);    //node1添加到樹結構中    node1.createChildNode('First child node', false, 'images/blue_key.png',null,null);    //渲染樹結構    tree.drawTree();    //創建第二個樹節點    node1 = tree.createNode('Second node',false,'images/star.png',null,null,null);    node1.createChildNode('Second child node', false, 'images/blue_key.png',null,null);  };</script>        

為樹節點創建上下文菜單

可以通過下面的方法來創建一個右鍵上下文菜單。

var contex_menu = { 'context1' : {  elements : [   {    text : 'Node Actions',    icon: 'images/blue_key.png',    action : function(node) {     },    submenu: {     elements : [      {       text : 'Toggle Node',       icon: 'images/leaf.png',       action : function(node) {        node.toggleNode();       }      },      {       text : 'Expand Node',       icon: 'images/leaf.png',       action : function(node) {        node.expandNode();       }      },      {       text : 'Collapse Node',       icon: 'images/leaf.png',       action : function(node) {        node.collapseNode();       }      },      {       text : 'Expand Subtree',       icon: 'images/tree.png',       action : function(node) {        node.expandSubtree();       }      },      {       text : 'Collapse Subtree',       icon: 'images/tree.png',       action : function(node) {        node.collapseSubtree();       }      },      {       text : 'Delete Node',       icon: 'images/delete.png',       action : function(node) {        node.removeNode();       }      },     ]    }   },   {    text : 'Child Actions',    icon: 'images/blue_key.png',    action : function(node) {     },    submenu: {     elements : [      {       text : 'Create Child Node',       icon: 'images/add1.png',       action : function(node) {        node.createChildNode('Created',false,'images/folder.png',null,'context1');       }      },      {       text : 'Create 1000 Child Nodes',       icon: 'images/add1.png',       action : function(node) {        for (var i=0; i<1000; i++)         node.createChildNode('Created -' + i,false,'images/folder.png',null,'context1');       }      },      {       text : 'Delete Child Nodes',       icon: 'images/delete.png',       action : function(node) {        node.removeChildNodes();       }      }     ]    }   }  ] }};        

然后通過下面的方法來初始化樹結構:

tree = createTree('div_tree','white',contex_menu);tree.drawTree();   

在樹結構渲染之后實時添加一個樹節點:

tree.createNode('Real Time',false,'images/leaf.png',null,null,'context1'); 

 以上就是本文的全部內容,為大家介紹了一款純js響應式實現樹結構菜單欄的特效,希望大家喜歡。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 信宜市| 若羌县| 铁岭市| 丹江口市| 陆川县| 潞城市| 新昌县| 麻栗坡县| 蕲春县| 城口县| 临桂县| 福安市| 江山市| 八宿县| 太和县| 偏关县| 三原县| 宜昌市| 馆陶县| 会宁县| 深圳市| 扎鲁特旗| 武乡县| 海伦市| 合川市| 惠州市| 洪雅县| 崇信县| 商都县| 河曲县| 承德县| 启东市| 沂源县| 谷城县| 南丰县| 阿克陶县| 江油市| 吉木乃县| 咸宁市| 中卫市| 尤溪县|