| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589 | 
							- /*
 
- 此处的命名空间和U.DD.js相同 因为功能是属于一个模块下的
 
- */
 
- //#region 拖动区域
 
- Namespace.register("U.D");
 
- //#region 带虚拟框的拖动
 
- /*
 
- * 拖动函数处理
 
- *
 
- * @param  {element} 需要拖动的元素
 
- * @param  {function} 拖动回调函数
 
- * @param  {object} 拖动参数
 
- ----------参数为GetElementInfo 返回值
 
- * @return  {object} 拖动对象
 
- */
 
- U.D.DragMouseDown = function (UDOD, UCB, UDE) {
 
-     if (event.button < 2) { //判断左键使用
 
-         var _UTE = new U.D.DragMouseDown.init(UDOD, UCB, UDE),
 
-         _UKE = {//拖动事件处理
 
-             "mousemove": U.M.apply(_UTE, _UTE.Drag), //move事件处理
 
-             "mouseup": U.M.apply(_UTE, _UTE.DragUp) //up事件处理
 
-         };
 
-         //绑定事件
 
-         U.Ut.AddObj(_UTE, _UKE); //给拖动方法添加新的事件。
 
-         _UTE.create(); //创建拖动参数
 
-         $(document).bind(_UKE); //绑定拖动事件
 
-         //返回对象
 
-         return (U.D.DragMouseDown.ST = _UTE);
 
-     }
 
- }
 
- /*
 
- * 初始化拖动等待拖动
 
- *
 
- * @param  {element} 需要拖动的元素
 
- * @param  {function} 拉伸回调函数
 
- * @param  {object} 拖动参数
 
- * @param  {object} 拉伸回调函数
 
- ----------参数为GetElementInfo 返回值
 
- */
 
- U.D.DragMouseDown.init = function (UDOD, UCB, UDE, UCE) {
 
-     (UCE && UCE.start) && (UCE.start()); //初始化回调
 
-     this.set(UCE);
 
-     //参数设置和说明
 
-     this.set({
 
-         max: (UDE && UDE.MaxLeft) ? UDE : null, //最大的拖动范围
 
-         SO: UDOD, //拖动的元素
 
-         AF: UCB, //回调函数
 
-         ESO: event.srcElement //当前选中的元素
 
-     });
 
-     return this;
 
- }
 
- U.D.DragMouseDown.init.prototype = {
 
-     /*
 
-     * 设置拖动参数 上述有参数说明
 
-     *
 
-     * @param  {object} 需要拖动的元素
 
-     */
 
-     set: function (UDE) {
 
-         (UDE) && (U.Ut.AddObj(this, UDE));
 
-     },
 
-     /*
 
-     * 创建虚拟框
 
-     *
 
-     */
 
-     create: function () {
 
-         var _UDOD = this.SO, //拖动元素
 
-         _UHE = U.M.GetElementAllInfo(_UDOD); //拖动元素的位置
 
-         //参数设置
 
-         U.Ut.AddObj(this, {
 
-             IsD: false, //是否为有效拖动
 
-             XY: U.M.GetMousep(), //当前鼠标位置
 
-             E: _UHE, //拖动元素大小等
 
-             MaxTop: _UHE["PXT"] + US.Height - 10, //最大拖动top
 
-             MaxLeft: _UHE["PXL"] + US.Width, //最大拖动left
 
-             MinLeft: -_UHE["OW"] + 10, //最小拖动left
 
-             MinTop: 0 //最小拖动top
 
-         });
 
-         //判断是否有最大范围设置
 
-         (this.max) && (this.IsMinAndMax());
 
-     },
 
-     /*
 
-     * 限制拖动范围
 
-     *
 
-     * @param  {object} 需要拖动的元素
 
-     */
 
-     IsMinAndMax: function (UDE) {
 
-         U.Ut.AddObj(this,
 
-         { "MaxLeft": this.E["PXL"] + UDE["MaxLeft"] || this.MaxLeft, //最大拖动left
 
-             "MinLeft": UDE["MinLeft"] || this.MinLeft, //最小拖动left
 
-             "MinTop": UDE["MinTop"] || this.MinTop, //最小拖动top
 
-             "MaxTop": this.E["PXT"] + UDE["MaxTop"] || this.MaxTop //最大拖动top
 
-         }); //设置拉伸的范围限制
 
-     },
 
-     //拖动时触发的函数
 
-     Drag: function () {
 
-         var i, _UHE, _UDTD, _UDMD,
 
-         _UDOD = this.SO, //拖动元素
 
-         _UDE = [["X", "Left", "L"], ["Y", "Top", "T"]],  //设置参数
 
-         _UME = this.E, //拖动元素原大小位置
 
-         _UCE = this.XY,
 
-         _UE = U.M.GetMousep(); //鼠标的位置
 
-         (this.move) && (this.move(this)); //回调函数
 
-         //循环判断设置 top left
 
-         for (i = 0; i < _UDE.length; i++) {
 
-             _UDE[i] = Math.min(Math.max(_UE[(_UHE = _UDE[i])[0]] - _UCE[_UHE[0]] + _UME["O" + _UHE[2]], this["Min" + _UHE[1]]), this["Max" + _UHE[1]]);
 
-         }
 
-         //第一次拖动的参数
 
-         if (!this.IsD) {
 
-             this.IsD = true; //设置正在拖动
 
-             U.Ut.AddObj(this, {
 
-                 VDB: U.D.foundVirtualBox(_UDOD), //添加虚拟框
 
-                 UMD: U.D.Masklayer() //添加遮层
 
-             });
 
-             //绑定事件
 
-             $(this.UMD).bind({
 
-                 mousemove: this.mousemove, //移动事件绑定
 
-                 mouseup: this.mouseup //释放事件
 
-             });
 
-             //遮罩置顶
 
-             U.D.SetDTop(this.UMD);
 
-             U.D.SetDTop(this.VDB);
 
-             //鼠标聚焦处理
 
-             this.VDB.setCapture();
 
-         }
 
-         //鼠标处理
 
-         $(this.VDB).addAttrArray({ "style": { "cssText": "left:" + _UDE[0] + "px;top:" + _UDE[1] + "px;"} });
 
-     },
 
-     //拖动结束
 
-     DragUp: function () {
 
-         //事件释放
 
-         $[document, this.UMD].unbind(
 
-         {
 
-             "mousemove": this.mousemove, //拖动变化使用
 
-             "mouseup": this.mouseup //拖动结束
 
-         });
 
-         this.IsD = false; //设置结束
 
-         //释放元素 同时元素定位
 
-         if (this.VDB) {
 
-             var _UDMD = this.UMD, //遮罩框
 
-             _UDTD = this.VDB, //虚拟框
 
-             _UDE = U.M.GetElementInfo(_UDTD); //拖动结束的位置
 
-             _UDTD.releaseCapture();
 
-             U.D.DragMouseDown.chche = U.D.DragMouseDown.ST = null;
 
-             $[_UDMD, this.VDB].remove(); //元素移除 //事件结束
 
-             $(this.SO).addAttrArray({ "style": { "cssText": "top:" + (_UDE["OT"] + 2) + "px;left:" + (_UDE["OL"] + 2) + "px;"} });
 
-             U.D.withf(this.UCB); //执行回调
 
-         }
 
-     }
 
- }
 
- //#endregion
 
- //#region
 
- /*
 
- * 直接拖动元素不带虚拟框 一般常用于图标移动
 
- *
 
- * @param  {element} 需要拖动的元素
 
- * @param  {object} 拖动参数
 
- ----------[ST] 初始化回调函数
 
- * @return  {object} 拖动对象
 
- */
 
- U.D.iconmove = function (UDOD, UDE) {
 
-     if (event.button != 2) { //只有右键允许拖动
 
-         var _UTE = new U.D.iconmove.init(UDOD, UDE);
 
-         return _UTE;
 
-     }
 
- }
 
- U.D.iconmove.init = function (UDOD, UDE) { //拖动开始
 
-     if (UDOD) {
 
-         var i, _UE = U.M.GetElementAllInfo($(UDOD)[0]), //拖动元素的位置
 
-         _UKE = U.M.GetMousep(), //鼠标位置
 
-         _UCE = this.UCE = {
 
-             "mousemove": U.M.apply(this, this.move), //移动函数处理
 
-             "mouseup": U.M.apply(this, this.up) //释放函数处理
 
-         };
 
-         (UDE && UDE["ST"]) && (UDE["ST"].call(this, UDOD)); //初始化回调
 
-         //初始化参数
 
-         U.Ut.AddObj(this, {
 
-             IsD: false, //设置未拖动状态
 
-             //  UMD: U.D.Masklayer(), //虚拟框
 
-             E: _UKE, //鼠标位置
 
-             SO: UDOD, //拖动元素
 
-             UE: _UE, //元素的位置
 
-             UCF: UDE, //拖动传参
 
-             MT: _UE["PXT"] + US.Height - 10, //拖动最大top
 
-             ML: _UE["PXL"] + US.Width, MIL: -_UE["OW"] + 10, //拖动最大left
 
-             MIT: 0 //最小拖动范围
 
-         });
 
-         //绑定设置
 
-         UDOD.setCapture(); //事件聚焦
 
-         $(document).bind(_UCE); //事件绑定 
 
-         U.D.SetDTop(this.UMD, true); //置顶
 
-         $(UDOD).css("z-index", 9999); //当前拖动元素置顶
 
-         return this;
 
-     }
 
- }
 
- U.D.iconmove.init.prototype = {
 
-     //移动效果
 
-     move: function () {
 
-         var i, _UTL,
 
-         _UDOD = this.SO; //当前拖动元素处理
 
-         _UE = U.M.GetMousep(),  //当前拖动鼠标位置
 
-         _UKE = this.E, //初始鼠标位置
 
-         _UME = this.UE, //元素位置
 
-         _UAE = [["X", "L"], ["Y", "T"]]; //变化top left对应参数
 
-         U.M.StopBubble(); //阻止冒泡
 
-         if (!this.UMD) {
 
-             this.UMD = U.D.Masklayer();
 
-             $(this.UMD).bind(this.UCE); //事件绑定 
 
-         }
 
-         //计算获取位置
 
-         for (i = 0; i < _UAE.length; i++) {
 
-             _UTL = _UE[_UAE[i][0]] - _UKE[_UAE[i][0]];
 
-             (Math.abs(_UTL) > 2) && (this.IsD = true);
 
-             _UAE[i] = Math.min(Math.max(_UTL + _UME["O" + _UAE[i][1]], this["MI" + _UAE[i][1]]), this["M" + _UAE[i][1]]);
 
-         }
 
-         //设置值
 
-         $(_UDOD).addAttrArray({ "style": { "cssText": "left:" + _UAE[0] + "px;top:" + _UAE[1] + "px"} }); //?
 
-         (this.UCF && this.UCF["Move"]) && (this.UCF["Move"].apply(this, [_UDOD, _UAE, _UKE, _UE])); //回调
 
-         this.ism = true;
 
-     },
 
-     //移动结束
 
-     up: function () {
 
-         var _UDOD = this.SO, //拖动元素
 
-             _UFE = this.UCF; //回调函数
 
-         U.M.StopBubble(); //阻止冒泡
 
-         _UDOD.setCapture(); //事件聚焦
 
-         //释放
 
-         this.ism = null;
 
-         $(this.UMD).remove(); //虚拟框移除
 
-         $(document).unbind(this.UCE); //移除绑定
 
-         $(_UDOD).css("z-index", ""); //去除置顶
 
-         //        //回调
 
-         (_UFE && _UFE["UP"]) && (_UFE["UP"].apply(this, [_UDOD])); //回调函数处理
 
-         setTimeout(function () { _UDOD.releaseCapture() }, 0); ; //鼠标聚焦移除
 
-     }
 
- }
 
- //#endregion
 
- //#region 拖动选择区域
 
- /*
 
- * 直接拖动元素不带虚拟框 一般常用于图标移动
 
- *
 
- * @param  {object} 拖动参数
 
- */
 
- U.D.DragSelectE = function (UDE) {
 
-     if (event.button != 2) {
 
-         var _UTE, _UCE, _UKE,
 
-         _UDOD = UDE["SO"], //拖选区域的元素
 
-         _UE = U.M.GetMousep(), //获取当前鼠标的位置
 
-         _UTF = _UDOD.componentFromPoint(_UE["X"] + 2, _UE["Y"] + 2);
 
-         //在滚动条内允许使用
 
-         if (_UTF != "outside" && _UTF.indexOf("scroll") == -1) {
 
-             _UTE = (new U.D.DragSelectE.init(UDE)).create().SetHover().event();
 
-             return _UTE;
 
-         }
 
-     }
 
-     else { //右键处理
 
-         (U.D.DragE) && (U.D.DragE.SetHover());
 
-     }
 
- }
 
- /*
 
- * 拖动开始区域
 
- *
 
- * @param  {object} 拖动参数
 
- */
 
- U.D.DragSelectE.init = function (UDE) {
 
-     var _UDOD = UDE["SO"],
 
-     _UDTD = UDE["SSO"] || _UDOD,
 
-     _USC = UDE["CS"];
 
-     //拖动参数添加
 
-     U.Ut.AddObj(this, {
 
-         "EL": _UDOD,
 
-         "SSO": _UDTD,
 
-         "OS": _UDTD.onscroll,
 
-         "CB": _UDOD.onmousedown,
 
-         "CS": _USC,
 
-         "PEL": U.M.GetStyle(_UDOD, "position") != "static" ? _UDOD : U.M.TOSP(_UDOD), "TC": [],
 
-         "Fun": UDE["FUN"],
 
-         "ElO": "",
 
-         "ESO": "",
 
-         "UT": "",
 
-         "UL": "",
 
-         "UW": "",
 
-         "UH": "",
 
-         "X": "",
 
-         "Y": "",
 
-         "TX": "",
 
-         "TY": "",
 
-         "PUX": "",
 
-         "PUY": "",
 
-         "W": "",
 
-         "H": "",
 
-         "T": "",
 
-         "L": ""
 
-     });
 
- }
 
- U.D.DragSelectE.init.prototype = {
 
-     event: function (UTF) { //事件赋值
 
-         var i, j, k, z, _USH, _UKE,
 
-         //拖选处理 绑定4个时间 mousedown mousemove mouseup scroll
 
-         _UCE = this.e = this.e || [[document, { "mousemove": ["Drag"], "mouseup": ["DragUp"]}], [this.SSO, { "scroll": ["CTA", "Drag"]}], [this["EL"], { "mousedown": ["Event"]}]];
 
-         //拖选处理
 
-         for (i = 0; i < _UCE.length; i++) {
 
-             _UKE = _UCE[i]; (!U.Ut.isArray(_UKE[0])) && (_UKE[0] = [_UKE[0]]);
 
-             //绑定事件处理
 
-             for (j in _UKE[1]) {
 
-                 if (_UKE[1].hasOwnProperty(j)) {
 
-                     for (k = 0; k < _UKE[1][j].length; k++) { //绑定解除
 
-                         (U.Ut.isString(_UKE[1][j][k])) && (_UKE[1][j][k] = U.M.apply(this, [[this[_UKE[1][j][k]]]])); //设置函数
 
-                         for (z = 0; z < _UKE[0].length; z++) {
 
-                             $(_UKE[0][z])[(UTF ? "un" : "") + "bind"](j, _UKE[1][j][k]);
 
-                         }
 
-                     }
 
-                 }
 
-             }
 
-         }
 
-     },
 
-     //变化赋值
 
-     CTA: function () {
 
-         var _UXE = this.ElO = U.M.GetElementAllInfo(this.EL),  //元素位置大小
 
-         //设置元素的位置
 
-         _UAE = {
 
-             "PUX": this["PUX"],
 
-             "PUY": this["PUY"]
 
-         };
 
-         //元素位置设置
 
-         U.Ut.AddObj(this, { "PUX": _UXE["SL"] + _UXE["PXL"], "PUY": _UXE["ST"] + _UXE["PXT"] });
 
-         if (_UAE["PUX"] !== "") {
 
-             this.DBH({
 
-                 "UW": this.UW + (this["PUX"] - _UAE["PUX"]),
 
-                 "UH": this.UH + (this["PUY"] - _UAE["PUY"]),
 
-                 "UT": this.UT, "UL": this.UL
 
-             });
 
-         }
 
-         return _UXE;
 
-     },
 
-     //创建托选
 
-     create: function () {
 
-         var i, _UKE, _UDTD,
 
-         _UDOD = this.EL, //拖动的元素
 
-         _UE = U.M.GetMousep(), //鼠标位置
 
-         _UXE = this.CTA(); //获取大小和变量
 
-         /*
 
-         设置大小位置
 
-         C:拖选下的志愿时 TX:left TY:top
 
-         */
 
-         U.Ut.AddObj(this, {
 
-             "C": $(_UDOD).Child(),
 
-             "TX": _UXE.TX,
 
-             "TY": _UXE.TY,
 
-             "X": _UE.X - _UXE.TX + this["PUX"],
 
-             "Y": _UE.Y - _UXE.TY + this["PUY"]
 
-         });
 
-         //允许拖选使用
 
-         if ((_UDTD = this.C[0])) {
 
-             _UKE = ["Left", "Top", "Right", "Bottom"];
 
-             for (i = 0; i < _UKE.length; i++) {
 
-                 _UKE[i] = U.M.GetStyle(_UDTD, "margin" + _UKE[i]); _UKE[i] = (!_UKE[i] || _UKE[i] == "auto") ? 0 : parseInt(_UKE[i]);
 
-             }
 
-             /*
 
-             参数设置:
 
-             W:拖选长 H:拖选宽 T:拖动的高度 L:拖动的left
 
-             */
 
-             U.Ut.AddObj(this, {
 
-                 "W": _UDTD.offsetWidth + _UKE[0] + _UKE[2],
 
-                 "H": _UDTD.offsetHeight + _UKE[1] + _UKE[3],
 
-                 "T": _UKE[1] + _UKE[3],
 
-                 "L": _UKE[0] + _UKE[2]
 
-             });
 
-         }
 
-         //拖动元素
 
-         this.ESO = $$("div", { "className": "UD_DSE", "style": { "cssText": "top:" + this.Y + "px;left:" + this.X + "px;zIndex:" + US.ZV + 1} }, _UDOD);
 
-         return this;
 
-     },
 
-     Drag: function () {//拖动选择逻辑
 
-         var _UDOD = this.EL,
 
-         _UE = U.M.GetMousep(), //当前鼠标的位置获取
 
-         _UT = Math.min(Math.max(_UE["Y"] - this.TY + this["PUY"], 0), Math.max(this.ElO["SH"], this.ElO["OH"]) - 2), //top
 
-         _UL = Math.min(Math.max(_UE["X"] - this.TX + this["PUX"], 0), this.ElO["SW"] - 2), //left
 
-         _UW = _UL - this.X, //选择的长
 
-         _UH = _UT - this.Y; //选择的框
 
-         //设置拖动最大最小的范围
 
-         if (_UW < 0) { _UW = Math.abs(_UW); }
 
-         else { _UL = this.X; }
 
-         if (_UH < 0) { _UH = Math.abs(_UH); }
 
-         else { _UT = this.Y; } //设置位置和大小
 
-         this.DBH({
 
-             "UW": _UW,
 
-             "UH": _UH,
 
-             "UT": _UT,
 
-             "UL": _UL
 
-         }); //设置大小位置
 
-     },
 
-     /*
 
-     * 滚动大小变化设置
 
-     *
 
-     * @param  {object} 选择的范围
 
-     */
 
-     DBH: function (UDE) {
 
-         var _UE = {};
 
-         $(this.ESO).addAttrArray({ "style": { "cssText": "width:" + UDE.UW + "px;height:" + UDE.UH + "px;top:" + UDE.UT + "px;left:" + UDE.UL + "px;"} }); //拉动大小变化 
 
-         U.Ut.AddObj(this, UDE); //添加属性处理
 
-         //位置大小设置
 
-         U.Ut.AddObj(_UE, {
 
-             "X": UDE.UL,
 
-             "Y": UDE.UT,
 
-             "BX": UDE.UW + UDE.UL,
 
-             "BY": UDE.UH + UDE.UT
 
-         });
 
-         this.IsLocation(_UE); //位置大小设置
 
-     },
 
-     /*
 
-     * 选择元素逻辑范围逻辑
 
-     *
 
-     * @param  {object} 选择的范围
 
-     */
 
-     IsLocation: function (UDE) {
 
-         if (this.C[0]) {//有子元素
 
-             var i, _UKE, _UDTD, _UTF,
 
-             _ULE = this.GetLXY(UDE); //选择的元素
 
-             //去除样式
 
-             if (this.TC.length) {
 
-                 for (i = 0; i < this.TC.length; i++) {
 
-                     $(_UDTD).removeClass(this.CS);
 
-                 }
 
-             }
 
-             //重新生成选择元素
 
-             this.TC = [];
 
-             for (i = _ULE[0]; i < _ULE[1]; i++) {//生成
 
-                 if ((_UDTD = this.C[i])) {
 
-                     //计算范围进行判断是否需要选择钙元素
 
-                     _UTF = ((_UKE = i % _ULE[4]) >= _ULE[2]) && (_UKE <= _ULE[3]) && ((_UKE + 1) * this.W >= UDE["X"]);
 
-                     if (_UTF && (_UDTD.offsetTop > UDE["BY"] || (_UDTD.offsetTop + this.H - this.T < UDE.Y))) {
 
-                         _UTF = false;
 
-                     }
 
-                     $(_UDTD)[(_UTF ? "add" : "remove") + "Class"](this.CS); //去除css
 
-                     (_UTF) && (this.TC.push(_UDTD));
 
-                 }
 
-             }
 
-             U.D.DragE = this;
 
-         }
 
-     },
 
-     /*
 
-     * 获取元素选择范围
 
-     *
 
-     * @param  {object} 选择的范围
 
-     */
 
-     GetLXY: function (ULE) {//
 
-         var _UL, _UDE = [0, 0];
 
-         _UDE[4] = _UL = Math.floor(this.ElO["SW"] / this.W); //每行占位的个数
 
-         _UDE[0] = ((Math.floor(ULE["Y"] / this.H) - 1) * _UL); //开始的位置
 
-         _UDE[1] = _UDE[0] + ((Math.ceil((ULE["BY"]) / this.H) - Math.floor(_UDE[0] / _UL)) * _UL); //结束的位置
 
-         _UDE[2] = Math.min(Math.ceil(ULE["X"] / this.W), _UL) - 1; _UDE[3] = Math.min(Math.ceil(ULE["BX"] / this.W), _UL) - 1; return _UDE;
 
-     },
 
-     //左右键逻辑
 
-     Event: function () {
 
-         if (event.button == 2) {
 
-             var i, _UHT, _UHL, _UTF,
 
-             _UDCD = this.TC, _UE = U.M.GetMousep(), //鼠标位置
 
-             _UT = _UE["Y"] - this.TY + this["PUY"], //鼠标在滚动掉的top
 
-             _UL = _UE["X"] - this.TX + this["PUX"]; //鼠标在滚动掉的left
 
-             //计算范围
 
-             for (i = 0; i < _UDCD.length; i++) {
 
-                 if (((_UHT = _UDCD[i].offsetTop) <= _UT && (_UHT + this.H - this.T) >= _UT) && ((_UHL = _UDCD[i].offsetLeft) <= _UL && (_UHL + this.W) > _UL)) {
 
-                     _UTF = true;
 
-                 }
 
-             }
 
-             //如果是需要回调的元素
 
-             if (_UTF) {
 
-                 (this.Fun) && (this.Fun(this.TC));
 
-             }
 
-             return !_UTF; //回调使用
 
-         }
 
-     },
 
-     //结束的逻辑
 
-     DragUp: function () {
 
-         var _UDOD = this.EL;
 
-         this.event(true);
 
-         _UDOD.releaseCapture();
 
-         _UDOD.removeChild(this.ESO); //去除事件
 
-     },
 
-     //释放变化
 
-     SetHover: function () {
 
-         var _UTE = U.D.DragE || this;
 
-         (_UTE.TC && _UTE.TC.length) && ($(_UTE.TC).removeClass(this.CS)); //去除选择元素样式
 
-         U.D.DragE = this.TC.length = 0;
 
-         return this;
 
-     }
 
- }
 
- //#endregion
 
- //#region 拖拉变化
 
- /*
 
- * 获取元素选择范围
 
- *
 
- * @param  {object} 拖选的元素
 
- * @param  {object} 拖选的传参
 
- */
 
- U.D.DragAb = function (UDOD, UDE) {
 
-     if (UDOD) {
 
-         UDE = UDE || {};
 
-         new U.D.DragAb.init(UDOD, UDE); //初始化拖选
 
-     }
 
- }
 
- /*
 
- * 拖动初始化
 
- *
 
- * @param  {object} 拖选的元素
 
- * @param  {object} 拖选的传参
 
- */
 
- U.D.DragAb.init = function (UDOD, UDE) {
 
-     var _UDTD = $(UDOD),
 
-     _UDSD = _UDTD.parentg(), //上级元素
 
-     _UDPD = _UDTD.prev(), //上面的兄弟节点
 
-     _UDND = _UDTD.next(); //下面的兄弟节点
 
-     //添加初始化值
 
-     U.Ut.AddObj(this, {
 
-         UDPD: _UDSD, //上级元素
 
-         w: _UDSD.width(), //当前长度
 
-         pw: _UDSD.parentg().width(), //总长度
 
-         UDOD: UDOD, //拖动的元素
 
-         UE: U.M.GetMousep(), //鼠标的位置
 
-         prev: _UDPD, //上面的兄弟节点
 
-         next: _UDND, //下面的兄弟节点
 
-         uw: [_UDPD.width(), _UDND.width()] //兄弟节点长度
 
-     });
 
-     //拖动参数设置
 
-     U.Ut.AddObj(this, UDE);
 
-     //聚焦
 
-     UDOD.setCapture();
 
-     //拖动元素
 
-     $(document.body).bind({
 
-         "mousemove": (this.move = U.M.apply(this, UDE.tf ? this.dragB : this.drag)),
 
-         "mouseup": (this.mup = U.M.apply(this, this.up))
 
-     });
 
- }
 
- U.D.DragAb.init.prototype = {
 
-     //拖动左右使用
 
-     drag: function () {
 
-         var _UDVD = this.prev, //上级元素
 
-         _UDND = this.next, //下面的兄弟节点
 
-         _UW = this.uw, //不变的大小
 
-         _UE = this.UE, //鼠标的位置
 
-         _UME = U.M.GetMousep(); //当前处理的鼠标位置
 
-         _UME["X"] = Math.min(Math.max(-_UW[0], _UME["X"] - _UE["X"]), _UW[1]); _UDVD.css("width", _UW[0] + _UME["X"] + "px"); _UDND.css("width", _UW[1] + _UME["X"] + "px"); //拖动大小处理
 
-         (this.scb) && (this.scb()); //拖动回调
 
-     },
 
-     //拖动菜单
 
-     dragB: function () {
 
-         var _UW,
 
-         _UDPD = this.UDPD, //上级元素
 
-         _UDSD = this.prev, //上级元素
 
-         _UPW = this.pw, //总长度
 
-         _UW = this.uw[0], //上面兄弟节点的长度
 
-         _UE = this.UE, //鼠标的位置
 
-         _UME = U.M.GetMousep(); //鼠标位置
 
-         _UME["X"] = Math.max(-_UW, _UME["X"] - _UE["X"]); //获取left
 
-         _UDSD.css("width", _UW + _UME["X"] + "px"); //设置下级兄弟的长度
 
-         _UDPD.css("width", (_UW = (_UME["X"] + this.w)) > this.pw ? _UW + "px" : this.pw + "px"); //设置上级兄弟的长度
 
-         (this.scb) && (this.scb());
 
-     },
 
-     //拖动释放
 
-     up: function () {
 
-         this.UDOD.releaseCapture(); //释放聚焦
 
-         $(document.body).unbind({ "mousemove": this.move, "mouseup": this.mup }); //释放拖动绑定
 
-         (this.upcb) && (this.upcb()); //回调处理
 
-     }
 
- }
 
- //#endregion
 
 
  |