📄 common.js
字号:
/* Copyright (c) 2004-2006, The Dojo Foundation All Rights Reserved. Licensed under the Academic Free License version 2.1 or above OR the modified BSD license. For more information on Dojo licensing, see: http://dojotoolkit.org/community/licensing.shtml*/dojo.provide("dojo.event.common");dojo.require("dojo.lang.array");dojo.require("dojo.lang.extras");dojo.require("dojo.lang.func");dojo.event = new function () { this._canTimeout = dojo.lang.isFunction(dj_global["setTimeout"]) || dojo.lang.isAlien(dj_global["setTimeout"]); function interpolateArgs(args, searchForNames) { var dl = dojo.lang; var ao = {srcObj:dj_global, srcFunc:null, adviceObj:dj_global, adviceFunc:null, aroundObj:null, aroundFunc:null, adviceType:(args.length > 2) ? args[0] : "after", precedence:"last", once:false, delay:null, rate:0, adviceMsg:false, maxCalls:-1}; switch (args.length) { case 0: return; case 1: return; case 2: ao.srcFunc = args[0]; ao.adviceFunc = args[1]; break; case 3: if ((dl.isObject(args[0])) && (dl.isString(args[1])) && (dl.isString(args[2]))) { ao.adviceType = "after"; ao.srcObj = args[0]; ao.srcFunc = args[1]; ao.adviceFunc = args[2]; } else { if ((dl.isString(args[1])) && (dl.isString(args[2]))) { ao.srcFunc = args[1]; ao.adviceFunc = args[2]; } else { if ((dl.isObject(args[0])) && (dl.isString(args[1])) && (dl.isFunction(args[2]))) { ao.adviceType = "after"; ao.srcObj = args[0]; ao.srcFunc = args[1]; var tmpName = dl.nameAnonFunc(args[2], ao.adviceObj, searchForNames); ao.adviceFunc = tmpName; } else { if ((dl.isFunction(args[0])) && (dl.isObject(args[1])) && (dl.isString(args[2]))) { ao.adviceType = "after"; ao.srcObj = dj_global; var tmpName = dl.nameAnonFunc(args[0], ao.srcObj, searchForNames); ao.srcFunc = tmpName; ao.adviceObj = args[1]; ao.adviceFunc = args[2]; } } } } break; case 4: if ((dl.isObject(args[0])) && (dl.isObject(args[2]))) { ao.adviceType = "after"; ao.srcObj = args[0]; ao.srcFunc = args[1]; ao.adviceObj = args[2]; ao.adviceFunc = args[3]; } else { if ((dl.isString(args[0])) && (dl.isString(args[1])) && (dl.isObject(args[2]))) { ao.adviceType = args[0]; ao.srcObj = dj_global; ao.srcFunc = args[1]; ao.adviceObj = args[2]; ao.adviceFunc = args[3]; } else { if ((dl.isString(args[0])) && (dl.isFunction(args[1])) && (dl.isObject(args[2]))) { ao.adviceType = args[0]; ao.srcObj = dj_global; var tmpName = dl.nameAnonFunc(args[1], dj_global, searchForNames); ao.srcFunc = tmpName; ao.adviceObj = args[2]; ao.adviceFunc = args[3]; } else { if ((dl.isString(args[0])) && (dl.isObject(args[1])) && (dl.isString(args[2])) && (dl.isFunction(args[3]))) { ao.srcObj = args[1]; ao.srcFunc = args[2]; var tmpName = dl.nameAnonFunc(args[3], dj_global, searchForNames); ao.adviceObj = dj_global; ao.adviceFunc = tmpName; } else { if (dl.isObject(args[1])) { ao.srcObj = args[1]; ao.srcFunc = args[2]; ao.adviceObj = dj_global; ao.adviceFunc = args[3]; } else { if (dl.isObject(args[2])) { ao.srcObj = dj_global; ao.srcFunc = args[1]; ao.adviceObj = args[2]; ao.adviceFunc = args[3]; } else { ao.srcObj = ao.adviceObj = ao.aroundObj = dj_global; ao.srcFunc = args[1]; ao.adviceFunc = args[2]; ao.aroundFunc = args[3]; } } } } } } break; case 6: ao.srcObj = args[1]; ao.srcFunc = args[2]; ao.adviceObj = args[3]; ao.adviceFunc = args[4]; ao.aroundFunc = args[5]; ao.aroundObj = dj_global; break; default: ao.srcObj = args[1]; ao.srcFunc = args[2]; ao.adviceObj = args[3]; ao.adviceFunc = args[4]; ao.aroundObj = args[5]; ao.aroundFunc = args[6]; ao.once = args[7]; ao.delay = args[8]; ao.rate = args[9]; ao.adviceMsg = args[10]; ao.maxCalls = (!isNaN(parseInt(args[11]))) ? args[11] : -1; break; } if (dl.isFunction(ao.aroundFunc)) { var tmpName = dl.nameAnonFunc(ao.aroundFunc, ao.aroundObj, searchForNames); ao.aroundFunc = tmpName; } if (dl.isFunction(ao.srcFunc)) { ao.srcFunc = dl.getNameInObj(ao.srcObj, ao.srcFunc); } if (dl.isFunction(ao.adviceFunc)) { ao.adviceFunc = dl.getNameInObj(ao.adviceObj, ao.adviceFunc); } if ((ao.aroundObj) && (dl.isFunction(ao.aroundFunc))) { ao.aroundFunc = dl.getNameInObj(ao.aroundObj, ao.aroundFunc); } if (!ao.srcObj) { dojo.raise("bad srcObj for srcFunc: " + ao.srcFunc); } if (!ao.adviceObj) { dojo.raise("bad adviceObj for adviceFunc: " + ao.adviceFunc); } if (!ao.adviceFunc) { dojo.debug("bad adviceFunc for srcFunc: " + ao.srcFunc); dojo.debugShallow(ao); } return ao; } this.connect = function () { if (arguments.length == 1) { var ao = arguments[0]; } else { var ao = interpolateArgs(arguments, true); } if (dojo.lang.isString(ao.srcFunc) && (ao.srcFunc.toLowerCase() == "onkey")) { if (dojo.render.html.ie) { ao.srcFunc = "onkeydown"; this.connect(ao); } ao.srcFunc = "onkeypress"; } if (dojo.lang.isArray(ao.srcObj) && ao.srcObj != "") { var tmpAO = {}; for (var x in ao) { tmpAO[x] = ao[x]; } var mjps = []; dojo.lang.forEach(ao.srcObj, function (src) { if ((dojo.render.html.capable) && (dojo.lang.isString(src))) { src = dojo.byId(src); } tmpAO.srcObj = src; mjps.push(dojo.event.connect.call(dojo.event, tmpAO)); }); return mjps; } var mjp = dojo.event.MethodJoinPoint.getForMethod(ao.srcObj, ao.srcFunc); if (ao.adviceFunc) { var mjp2 = dojo.event.MethodJoinPoint.getForMethod(ao.adviceObj, ao.adviceFunc); } mjp.kwAddAdvice(ao); return mjp; }; this.log = function (a1, a2) { var kwArgs; if ((arguments.length == 1) && (typeof a1 == "object")) { kwArgs = a1; } else { kwArgs = {srcObj:a1, srcFunc:a2}; } kwArgs.adviceFunc = function () { var argsStr = []; for (var x = 0; x < arguments.length; x++) { argsStr.push(arguments[x]); } dojo.debug("(" + kwArgs.srcObj + ")." + kwArgs.srcFunc, ":", argsStr.join(", ")); }; this.kwConnect(kwArgs); }; this.connectBefore = function () { var args = ["before"]; for (var i = 0; i < arguments.length; i++) { args.push(arguments[i]); } return this.connect.apply(this, args); }; this.connectAround = function () { var args = ["around"]; for (var i = 0; i < arguments.length; i++) { args.push(arguments[i]); } return this.connect.apply(this, args); }; this.connectOnce = function () { var ao = interpolateArgs(arguments, true); ao.once = true; return this.connect(ao); }; this.connectRunOnce = function () { var ao = interpolateArgs(arguments, true); ao.maxCalls = 1; return this.connect(ao); }; this._kwConnectImpl = function (kwArgs, disconnect) { var fn = (disconnect) ? "disconnect" : "connect"; if (typeof kwArgs["srcFunc"] == "function") { kwArgs.srcObj = kwArgs["srcObj"] || dj_global; var tmpName = dojo.lang.nameAnonFunc(kwArgs.srcFunc, kwArgs.srcObj, true); kwArgs.srcFunc = tmpName; } if (typeof kwArgs["adviceFunc"] == "function") { kwArgs.adviceObj = kwArgs["adviceObj"] || dj_global; var tmpName = dojo.lang.nameAnonFunc(kwArgs.adviceFunc, kwArgs.adviceObj, true); kwArgs.adviceFunc = tmpName; } kwArgs.srcObj = kwArgs["srcObj"] || dj_global; kwArgs.adviceObj = kwArgs["adviceObj"] || kwArgs["targetObj"] || dj_global; kwArgs.adviceFunc = kwArgs["adviceFunc"] || kwArgs["targetFunc"]; return dojo.event[fn](kwArgs); }; this.kwConnect = function (kwArgs) { return this._kwConnectImpl(kwArgs, false); }; this.disconnect = function () { if (arguments.length == 1) { var ao = arguments[0]; } else { var ao = interpolateArgs(arguments, true); } if (!ao.adviceFunc) { return; } if (dojo.lang.isString(ao.srcFunc) && (ao.srcFunc.toLowerCase() == "onkey")) { if (dojo.render.html.ie) { ao.srcFunc = "onkeydown"; this.disconnect(ao); } ao.srcFunc = "onkeypress"; } if (!ao.srcObj[ao.srcFunc]) { return null; } var mjp = dojo.event.MethodJoinPoint.getForMethod(ao.srcObj, ao.srcFunc, true); mjp.removeAdvice(ao.adviceObj, ao.adviceFunc, ao.adviceType, ao.once); return mjp; }; this.kwDisconnect = function (kwArgs) { return this._kwConnectImpl(kwArgs, true); };
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -