zoukankan      html  css  js  c++  java
  • 轻量级jquery框架之--工具栏(toolbar)

    工具栏需求:

    (1)要求工具栏可以通过JSON配置格式生成,这样可以从服务器端控制生成的JSON来控制UI层面的按钮状态

    (2)可以自定义按钮的图标样式。

    (3)可以定义按钮事件,按钮事件需要支持以字符串形式定义(服务端对应的按钮JSON配置里的事件配置为字符串形式)

    (4)支持工具栏全局事件,即点击任意按钮都触发的事件

    (5)支持编程方式禁用、启用、添加、删除按钮

    (6)支持配置额外的事件参数,考虑参数中附带权限标志

    (7)工具栏需要考虑可以简单集成到tree组件、datagrid等可能需要用到工具栏的UI组件中

    (8)如果是服务器端生成工具栏方式,为了便于工具栏事件的管理,考虑将工具栏的事件定义到当前页面window对象下的某个事件集合中

    工具栏api设计:

    一、JOSN配置定义:

     全局定义: 

    var defaultOpts = {
            params:{},//用于集成到tree datagrid时 行按钮的数据参数
            align: 'left',//对齐方式,默认是left 、center、right
            style:'normal',// normal / min / plain
            buttons: [], //{} 
            operated: function () { }//任意按钮事件均触发的事件,优先自身注册的时候然后才调用通用事件,this= a标签
        };

     单个按钮定义:

     

     buttons=[ {
             id: '04', //按钮id
             iconCls: '',//图标样式
             cmd: 'test',//对应的权限标识
             params:{pr1:123},//额外的参数
             statu: false,//是否可用
             text: '按钮',//文本
             click: function (pr) {//点击事件,如果存在click,则字符串形式的handler不可用
             },
             handler:'字符串形式的事件', //配合methodsObject使用
             methodsObject:'window对象下的事件集合名词'
        }]

    二、api定义

      

    三、工具栏预览

      

    代码下载:

      https://code.csdn.net/hjwen/open-ui/tree/master

      

  • 相关阅读:
    [LeetCode] 222. Count Complete Tree Nodes Java
    [LeetCode] 199. Binary Tree Right Side View Java
    自动加载的两种办法
    Cannot switch on a value of type String for source level below 1.7. Only convertible int values or enum variables are permitted
    Java 面试
    Java 获取最近时间
    Java 倒序输出
    java 排序算法
    图片预览
    SSH三大框架的工作原理
  • 原文地址:https://www.cnblogs.com/hjwen/p/4471634.html
Copyright © 2011-2022 走看看