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

首頁 > 網站 > WEB開發 > 正文

一步一步jQuery流程設計器插件goflow(附代碼)-2-UI界面增加屬性顯示

2024-04-27 15:01:57
字體:
來源:轉載
供稿:網友

設計器UI界面有了,接下來結點的屬性怎么顯示呢,采用彈窗的話覺得不方便用戶;用easyui的PRopertygrid在最右邊顯示,又覺得要引入easyui,使得插件變復雜了;最后決定自己寫。

1、實現效果如下:

 1.1、屬性顯示

1.2、屬性隱藏

1.3、屬性分組收起

2、jQuery - 左右拖動分隔條(Demo)

3、流程板板屬性定義及初始化

//定義流程模板屬性TemplateProperty = function () {    if (typeof TemplateProperty.defaults == "undefined") {        /*第一次定義對象時為GoFlow類定義靜態屬性*/        TemplateProperty.defaults = {            data: {                            }        };        /*第一次定義對象時定義實例共有方法*/        var p = TemplateProperty.prototype;        p.createTable = function () {                        //給控件賦值            this.bindData();            //綁定事件            this.bindDelegate();        };        //把流程模板數據綁定到控件        p.bindData = function () {            var self = this;            $.each(self.$opts.data, function (k, v) {                self.setValue(k, v);            });        };        //綁定事件        p.bindDelegate = function () {            //展開/收縮屬性組            this.$tbody.delegate("td[group].Fold,td[group].Expanded", "click", { self: this }, function (e) {                var $templateProp = e.data.self;                var fold = $(e.target).hasClass("Fold");                $(e.target).toggleClass("Fold", !fold);                $(e.target).toggleClass("Expanded", fold);                var selector = GoFlow.formatString(                    "[group='{0}'][property]",                    $(e.target).attr("group"));                $templateProp.$tbody.children(selector).toggle();            });            //input綁定onchange事件             this.$tbody.delegate("td > input", "change", { self: this }, function (e) {                var $templateProp = e.data.self;                var key = $(e.target).parent().parent().attr("property");                var value = $(e.target).val();                $templateProp.setData(key, value);            });            //input綁定onkeydown事件             this.$tbody.delegate("td > input.goflow-valid-int", "keydown", function (e) {                return GoFlow.validInt(e);            });        };        p.getData = function (key) { return this.$opts.data[key]; };        p.setData = function (key, value) { this.$opts.data[key] = value; };        p.getValue = function (key) {            switch (key) {                            };        };        p.setValue = function (key, value) {            switch (key) {                            };        };    }};//初始化TemplateProperty對象TemplateProperty.prototype.init = function (pdiv, opts) {    this.$propertyDiv = pdiv;    this.$opts = opts;    this.createTable();};

4、加入流程模板屬性后goflow插件最新結構如下

(function ($, undefined) {    //定義流程模板屬性    TemplateProperty = function () {            };    //初始化TemplateProperty對象    TemplateProperty.prototype.init = function (pdiv, opts) {            };    //定義GoFlow類    GoFlow = function () {            };    //初始化GoFlow對象(gfDiv:jQuery對象;opts:參數)    GoFlow.prototype.init = function (gfDiv, opts) {            };    //插件的定義        $.fn.goflow = function (opts) {            };})(jQuery); //閉包結束  

5、代碼:GoFlow_02.zip


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 七台河市| 缙云县| 望都县| 岱山县| 化州市| 任丘市| 通江县| 灯塔市| 阜南县| 平武县| 青海省| 芷江| 轮台县| 玛纳斯县| 石河子市| 江口县| 四子王旗| 方城县| 孝义市| 溧阳市| 镇康县| 新沂市| 漯河市| 武定县| 额敏县| 寻乌县| 宣城市| 常宁市| 遵义市| 罗山县| 舞阳县| 常州市| 正宁县| 遂宁市| 巴林右旗| 皋兰县| 新乐市| 耒阳市| 蕉岭县| 南城县| 景谷|