js扩展jquery对象基元的开发与代码编写

2023-11-19

js扩展jquery对象基元的开发与代码编写

(function (window, $, undefined) {

    var _Core = function () {
        var eventarr = [];
        var _OnPageLoad = undefined;
        ///获取USER信息
        var getUser = function () {
            //var obj = {};
            //obj.USERID = $.cookie(COOKIE_USER);
            var cookieData = $.cookie(COOKIE_USER);
            if (cookieData === undefined) {
                $Core.TimeOut();
                return {};
            }
            var cookieuser;
            try {
                cookieuser = $.parseJSON(cookieData);
            } catch (e) {
                $Core.TimeOut();
                //window.location.href = TIMEOUT_PATH;
                return {};
            }

            if (cookieuser == undefined || cookieuser.USERID == undefined) {
                //每一登录信息跳转至登录页面
                //alert("登录超时!");
                $Core.TimeOut();
                //window.location.href = TIMEOUT_PATH;
                return {};
            }
            return cookieuser;

        }
        //登录 设置用户本地信息
        this.Login = function (userinfo) {
            $.cookie(COOKIE_USER, JSON.stringify(userinfo), { json: true });

        };
        this.LogOut = function () {
            $.removeCookie(COOKIE_USER);
        };
        //对外访问
        this.USER = function () {
            return getUser();
        };
        //服务地址
        this.SERVICEPATH = function () {
            return SERVICE_PATH;
        };
        this.SERVICEROOT = function () {
            return SERVICE_ROOT;
        }
        this.APPID = APP_ID;
        //验证失败,
        this.TimeOut = function () {
            //alert("身份验证失败,请重新登录!");
            $Core.LogOut();
            window.top.location.href = TIMEOUT_PATH;
        };
        //验证服务是否可用
        this.ValidPage = function (rid) {

            var resid = rid || $Core.util.getResId();
            if (resid) {
                var isexists = window.top.RESLIST.contains({ resId: resid },
                    function (item1, item2) {
                        return item1.resId === item2.resId;
                    });
                if (!isexists) {
                    location.href = "/403.html";
                    return;
                }
            }
            //验证
            //$.ajax({
            //    url: "WebForm1.aspx",
            //    data: { resid:rid },
            //    success: function (datas) {
            //        if (datas.state == -1) {
            //            //没有权限跳转
            //        }
            //    }
            //});
        };
        /**
         * 获取
         * @param {any} resid 页面资源id
         * @param {any} func  回调
         */
        this.ValidAction = function (resid, func) {
            var btns = $("[data-rescode]");
            btns.hide();
            var resbtns = $Core.util.getResActions();
            if (resbtns.length > 0);
            {
                $.each(resbtns,
                    function (i, n) {
                        $.each(btns,
                            function (j, btn) {
                                var jbtn = $(btn);
                                var btnRes = jbtn.data("rescode");
                                if (btnRes != undefined &&
                                    btnRes !== "" &&
                                    btnRes.toLowerCase() === n.resCode.toLowerCase()) {
                                    jbtn.show();
                                }

                            });
                    });
                btns.filter(":hidden").remove();
            }
        };

        this.ajax = jqueryAjax;
        this.IsAjaxTimeOut = false;

        var _loading = function () {
            this.AjaxLoadingStart = function () {
                $("#pageloadingright").fadeIn();
            };

            this.HideAjaxLoading = function () {
                $("#pageloadingright").fadeOut(500);
            };

            this.HidePageLoading = function () {
                $("#pageloading").fadeOut(500);
            }

            this.HideAll = function () {
                this.HideAjaxLoading();
                this.HidePageLoading();
            }

        };
        this.Loading = new _loading();
        /**
         * 页面所有ajax加在完毕后执行
         * @param {function()} func 回调函数
         */
        this.OnPageLoad = function (func) {
            if (func !== undefined)
                _OnPageLoad = func;
        };

        var pageLoad = function () {
            if (_OnPageLoad)
                _OnPageLoad();
        };
        $(function () {
            var _interval = setInterval(function () {
                //if
                if (!window.ajaxruning) {
                    clearInterval(_interval);
                    pageLoad();
                }
            }, 100);
            $Core.ValidPage();
            $Core.ValidAction();

        });
    };
    window.$Core = new _Core();

    var config = function () {
        return {
            //附件上传单文件大小限制
            WebUpload_fileSingleSizeLimit: 50 * 1024 * 1024,
            //ajax请求超时时间
            ajaxTimeout: 30000
        };
    };
    $Core.Config = new config();

    /******************************************UI****************************** */
    var _UI = function () {
        var _message = function () {
            var createAlert = function (type, msg, timeout) {
                if (timeout === undefined)
                    timeout = 2000;

                var div = $(
                    '<div class="cntenalert" >' +
                    '<div class="alert-icons"></div>' +
                    '<div class="alert-close">×</div>' +
                    '<div class="alert-msg"></div></div>');
                var winWidth = ($(window).width() - 200) / 2;
                div.css("left", winWidth);
                div.addClass(type);

                var close = div.find(".alert-close");
                var divmsg = div.find(".alert-msg");
                close.click(function () {
                    div.fadeOut(function () {
                        div.remove();
                    });
                });

                divmsg.text(msg);

                div.fadeIn(function () {

                });

                $("body").append(div);
                if (timeout > 0)
                    setTimeout(function () {
                        div.fadeOut(function () {
                            div.remove();
                        });
                    }, timeout);

            }
            /**
             * 成功提示
             * @param {any} msg
             */
            this.success = function (msg) {
                createAlert("alert", msg);
            }
            /**
             * 错误的提示
             * @param {any} msg
             */
            this.error = function (msg) {
                createAlert("alert-error", msg, 5000);
            }
            /**
             * 提醒
             * @param {any} msg
             */
            this.warning = function (msg) {
                createAlert("alert-warning", msg, 3000);
            }
            /**
             * 清除所有提示信息
             * */
            this.clear = function () {
                $(".cntenalert").fadeOut(function () {
                    $(".cntenalert").remove();
                });
            }

        }
        this.message = new _message();
        /**
         * 打开一个url 的Dialog 对话框
         * @param {any} id 指定一个名字
         * @param {any} url 页面地址
         * @param {any} options Dialog 参数
         */
        this.openDialog = function (id, url, options) {
            var frameid = id + "_frame";
            var win = $("#" + id);
            if (url.indexOf("?") > -1)
                url = url + "&_r=" + Math.random();
            else
                url = url + "?_r=" + Math.random();
            var getframe = function (id, url) {
                var f = $('<iframe id="{0}" src="{1}" width="100%" height="100%" scrolling="no" frameborder="0" ></iframe>'.format(id, url));
                return f;
            };

            if (win.size() == 0) {
                var $frame = getframe(frameid, url);
                //$frame.height(options.height - 43);
                var defaultOptions = {
                    maximizable: true,
                    resizable: true,
                    closed: false,
                    cache: false,
                    modal: true,
                    constrain: true,
                    width: "80%",
                    height: "90%"
                };
                if (options) {
                    $.extend(defaultOptions, options,
                        {
                            onClose: function () {
                                win.remove();
                                if ($.isFunction(options.onClose)) {
                                    options.onClose.apply(this);
                                }
                            }
                        });
                }
                defaultOptions.content = $frame;

                var dd = $("<div id='" + id + "' style='overflow:hidden' />");
                return dd.dialog(defaultOptions);
            } else {
                $("#" + frameid).attr("src", url);
                return win.dialog("open");
            }

        }

        /**
         * 重新设置datagrid 排序状态
         * @param {any} dg jquery对象
         */
        this.resetDataGridSort = function (dg, psotrName, psortOrder) {
            var opt = dg.datagrid('options');
            opt.sortName = psotrName || "";
            opt.sortOder = psortOrder || "";
            var panel = dg.datagrid("getPanel");
            var sortcell = panel.find(".datagrid-sort");
            $.each(sortcell, function (i, n) {
                var targer = $(n);
                targer.removeClass("datagrid-sort-asc datagrid-sort-desc");
            });
        }
    };
    $Core.UI = new _UI();

})(window, jQuery);

基元使用

 $Core.OnPageLoad(function () {
            $Core.Loading.HidePageLoading();
        });

                var url = "InstallApplyForm.html?s=" + Math.random();
                $Core.UI.openDialog("redwind", url + "&installApplyId=" + value +"&type=red",
                    {
                        title: "查看详情",
                        width: '80%',
                        height: '90%',
                        onClose: function () {
                        }
                    });

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

js扩展jquery对象基元的开发与代码编写 的相关文章

  • 分块查找算法思路、示例和实现

    分块查找 索引表 22 44 74 数组 22 12 13 9 8 33 42 44 38 24 48 60 58 74 47 算法步骤 通过索引表线性查找确定在数组的哪一 块 通过数组里所在 块 的线性查找确定是否存在 在哪个位置 算法代
  • 2023西安交通大学软件工程915考研经验帖(初试+复试)

    目录 前言 一 初试准备 数学 英语 政治 专业课 总结 杂项 二 复试准备 1 笔试 数据库 操作系统 2 面试 总结 前言 本文仅记录我考研期间 2022 12初试 2023 3复试 的经验和感受 不具有普适性 请根据自身情况调整学习计
  • anaconda 删除环境_Anaconda:解决你装包的烦恼

    生物信息学的日常就是利用五花八门的工具和各种各样的数据打交道 很多时候需要在命令行安装软件或者包 我相信每一个生信人都碰到过安装软件或包时无法解决依赖的囧况 安装软件或者包 听起来是一件很简单的一件事 实际情况却不是如此 比如说编译时碰到系
  • android12适配机型,安卓12支持机型有哪些?安卓12系统为什么有的软件用不了?...

    安卓12系统终于发布了 虽说之前也体验了不少的测试版本了 这次正式版的发售还是很期待的 Android 12是Android历史上最大的设计变化 整体的界面也简洁了不少 不过也还存在不少的问题 比如指纹识别 人脸识别等 下面一起来看看安卓1
  • 网络通信TCP协议三次握手

    TCP是什么 TCP Transmission Control Protocol 传输控制协议 是一种面向连接 连接导向 的 可靠的 基于IP的传输层协议 TCP在IP报文的协议号是6 TCP是一个超级麻烦的协议 而它又是互联网的基础 也是

随机推荐

  • [Transformer]A Survey of Transformers-邱锡鹏

    复旦邱锡鹏组最新综述 A Survey of Transformers A Survey of Transformers Transformers已经在人工智能诸多领域 如NLP CV 声音处理等方面取得进展 也受到学术界和工业界的广泛关注
  • 第十四届蓝桥杯程序设计C++B组 (详细图解+保姆级注释)

    0 写在前面 本届CB组题目难度较往年整体提升了一些 考察知识点全面 题目质量很高 推荐备赛蓝桥杯或感兴趣的同学深入研究本套题 废话不多说 直接上干货 一 冶炼金属 签到题难度 考察数论分块知识or二分 有部分同学可能知道下取整的定义 但是
  • Mysql 时间戳转换为日期格式

    1 时间戳转日期 函数 FROM UNIXTIME select FROM UNIXTIME 1661997078 Y m d H i s 注意时间戳长度为 10 当时间戳长度大于10 要截取前十位 select substr 166199
  • python 再复习一下遍历目录下文件及子文件夹

    代表目前所在的目录 代表上一层目录 代表根目录 注意点的位置就是了 import os for image in os listdir os path join os getcwd 利润表 print image for root dirs
  • Vijava学习笔记之DataCenter(基础配置信息)

    vijava 代码 实体类 package com vmware pojo 数据中心 author zhb public class DataCenter extends Entity private String name 数据中心名称
  • ASP.NET Core 中间件详解及项目实战

    前言 在上篇文章主要介绍了DotNetCore项目状况 本篇文章是我们在开发自己的项目中实际使用的 比较贴合实际应用 算是对中间件的一个深入使用了 不是简单的Hello World 如果你觉得本篇文章对你有用的话 不妨点个 推荐 目录 中间
  • 使用ps命令查看进程的准确启动时间与启动后所消耗的时间

    使用ps命令查看nginx进程的准确启动时间与启动后到现在所消耗的时间 hadoop DSJ 4G 26 ps eo pid lstart etime cmd grep nginx 2204 Tue Nov 21 16 52 47 2017
  • Linux之iptables详解及tcpdump

    https www jianshu com p ed001ae61c58 原文有几处写的不明白的地方加以重整 可以参考这个人写的 感觉他明白的笔记透彻 https blog 51cto com 13677371 2094355 作者一共在内
  • K8S暴露服务的三种方式

    文章目录 暴露服务的三种方式 NodePort LoadBalane Ingress 内容参考 暴露服务的三种方式 NodePort 将服务的类型设置成NodePort 每个集群节点都会在节点上打 开 一 个端口 对于NodePort服务
  • mtb2_VizQL_Cleaning_Regx phone email_CRISP-DM_pdf table to text then to Excel

    Changing field attribution Let us look at the World Happiness Report We create the following worksheet by placing Start
  • 真题详解(哈希冲突)-软件设计(七十)

    真题详解 3FN 软件设计 六十九 https blog csdn net ke1ying article details 130548812 在以阶段划分的编译器 阶段的主要作用是分析构成程序的字符及由字符构造规则构成的符号是否复合程序语
  • 使用redis远程连接数据库

    使用redis远程连接数据库 1 首先下在redis 略 2 下载好后如图 3 输入远程数据库地址 error 错误信息提示的是 没有数据库权限 需要输入密码 4 输入密码后就可以进行操作了 5 因为是key value格式的 所以其实re
  • str计算机中代表什么,STR到底是待机还是休眠

    1 为什么需要待机 休眠 尽管电脑硬件运行速度越来越快 但操作系统的体积也在不断膨胀 使得电脑开 关机时 启动 关闭的程序越来越多 花费时间也越来越漫长 因此如何让电脑能够快速启动 一开机就进入Windows 就成为用户关心的问题 于是 随
  • (代码审计)zzcms前台SQL注入

    1 首先通过Seay源码审计工具发现存在admin ask phpSQL注入漏洞 2 根据提示定位到这段代码
  • Java-static关键词的引入

    Java static关键词的引入 栈 局部变量 堆 new出来的结构 对象 数组 方法区 类的加载信息 静态域 常量池 1 相关概念 静态的 公有的 不属于哪个对象 可以用来修饰 属性 方法 代码块 内部类 当static修饰属性时 按照
  • PMS及应用安装过程分析一

    本文阐释应用安装过程 对于开机过程应用包扫描过程不讲述 请参考网上其他文章 PMS类图 APP安装过程 1 PackageInstallerActivity创建 1 1 getPackageManager 1 2 processPackag
  • python如何检查一个对象是否是可迭代对象

    有的时候我们会记不住python里哪种数据类型是可以迭代的对象 这个时候我们可以使用collections里的Iterable来检查这个实例是否可以迭代 gt gt gt from collections import Iterable 载
  • 某东商品价格抓取

    今天做了一个京东商品价格的需求 整理一下 第一步 打开Chrome浏览器自带抓包工具 选择network选项卡 第二步 按下Ctrl F5 打开search 在里面输入价格 例如图中输入的是1318 00 然后回车就会出现包含价格的接口出现
  • 选频网络的原理

    请高手给我讲解下选频网络的原理 选频电路 2012 09 28 18 23 freechen3 分类 工程技术科学 浏览173次 提问者采纳 2012 09 30 00 07 选频网络是利用谐振原理实现 输入的信号含有各次频率分量 选频网络
  • js扩展jquery对象基元的开发与代码编写

    js扩展jquery对象基元的开发与代码编写 function window undefined var Core function var eventarr var OnPageLoad undefined 获取USER信息 var ge