国产探花免费观看_亚洲丰满少妇自慰呻吟_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


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 东山县| 利津县| 新疆| 娄底市| 长沙县| 万安县| 延安市| 会昌县| 巨鹿县| 麟游县| 大关县| 湟中县| 阿拉尔市| 安新县| 揭东县| 连州市| 邓州市| 富锦市| 太保市| 永仁县| 安阳县| 金平| 兴业县| 锡林郭勒盟| 临沂市| 阿尔山市| 紫阳县| 三明市| 江油市| 股票| 桦甸市| 金塔县| 石嘴山市| 信阳市| 灌云县| 新巴尔虎左旗| 大洼县| 陕西省| 彭州市| 漾濞| 汕头市|