⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 window.js

📁 能够实现宾馆管理的基本功能。 例如删除
💻 JS
📖 第 1 页 / 共 4 页
字号:
      this.doNotNotifyHide = false;      this._notify("onClose");    }  },    minimize: function() {    var r2 = $(this.getId() + "_row2");    var dh = r2.getDimensions().height;        if (r2.visible()) {      var h  = this.element.getHeight() - dh;      this.height -= dh;      r2.hide()      this.element.setStyle({height: h + "px"})      if (! this.useTop) {        var bottom = parseFloat(this.element.getStyle('bottom'));        this.element.setStyle({bottom: (bottom + dh) + 'px'});      }    }     else {            var h  = this.element.getHeight() + dh;      this.height += dh;            this.element.setStyle({height: h + "px"})      if (! this.useTop) {        var bottom = parseFloat(this.element.getStyle('bottom'));        this.element.setStyle({bottom: (bottom - dh) + 'px'});      }      r2.show();      this.toFront();    }    this._notify("onMinimize");        // Store new location/size if need be    this._saveCookie()  },    maximize: function() {    if (this.isMinimized())      return;      if (isIE && this.heightN == 0)      this._getWindowBorderSize();          if (this.storedLocation != null) {      this._restoreLocation();      if(this.iefix)         this.iefix.hide();    }    else {      this._storeLocation();      Windows.unsetOverflow(this);            var windowScroll = WindowUtilities.getWindowScroll();      var pageSize = WindowUtilities.getPageSize();          var left = windowScroll.left;      var top = windowScroll.top;            if (this.options.parent != document.body) {        windowScroll =  {top:0, left:0, bottom:0, right:0};        var dim = this.options.parent.getDimensions();        pageSize.windowWidth = dim.width;        pageSize.windowHeight = dim.height;        top = 0;         left = 0;      }            if (this.constraint) {        pageSize.windowWidth -= Math.max(0, this.constraintPad.left) + Math.max(0, this.constraintPad.right);        pageSize.windowHeight -= Math.max(0, this.constraintPad.top) + Math.max(0, this.constraintPad.bottom);        left +=  Math.max(0, this.constraintPad.left);        top +=  Math.max(0, this.constraintPad.top);      }            this.element.setStyle(this.useLeft ? {left: left} : {right: left});      this.element.setStyle(this.useTop ? {top: top} : {bottom: top});      this.setSize(pageSize.windowWidth - this.widthW - this.widthE , pageSize.windowHeight - this.heightN - this.heightS)      this.toFront();      if (this.iefix)         this._fixIEOverlapping();     }    this._notify("onMaximize");    // Store new location/size if need be    this._saveCookie()  },    isMinimized: function() {    var r2 = $(this.getId() + "_row2");    return !r2.visible();  },    isMaximized: function() {    return (this.storedLocation != null);  },    setOpacity: function(opacity) {    if (Element.setOpacity)      Element.setOpacity(this.element, opacity);  },    setZIndex: function(zindex) {    this.element.setStyle({zIndex: zindex});    Windows.updateZindex(zindex, this);  },  setTitle: function(newTitle) {    if (!newTitle || newTitle == "")       newTitle = "&nbsp;";          Element.update(this.element.id + '_top', newTitle);  },  setStatusBar: function(element) {    var statusBar = $(this.getId() + "_bottom");    if (typeof(element) == "object") {      if (this.bottombar.firstChild)        this.bottombar.replaceChild(element, this.bottombar.firstChild);      else        this.bottombar.appendChild(element);    }    else      this.bottombar.innerHTML = element;  },  _checkIEOverlapping: function() {     if(!this.iefix && (Prototype.Browser.IE) && this.element.getStyle('position') == 'absolute' && this.element.id == 'overlay_modal') {        new Insertion.After(this.element.id, '<iframe id="' + this.element.id + '_iefix" '+ 'style="display:none;position:absolute;filter:progid:DXImageTransform.Microsoft.Alpha(opacity=0);" ' + 'src="javascript:false;" frameborder="0" scrolling="no"></iframe>');        this.iefix = $(this.element.id+'_iefix');    }    if(this.iefix)       setTimeout(this._fixIEOverlapping.bind(this), 50);  },  _fixIEOverlapping: function() {      Position.clone(this.element, this.iefix);      this.iefix.style.zIndex = this.element.style.zIndex - 1;      this.iefix.show();  },    _getWindowBorderSize: function(event) {    // Hack to get real window border size!!    var div = this._createHiddenDiv(this.options.className + "_n")    this.heightN = Element.getDimensions(div).height;        div.parentNode.removeChild(div)    var div = this._createHiddenDiv(this.options.className + "_s")    this.heightS = Element.getDimensions(div).height;        div.parentNode.removeChild(div)    var div = this._createHiddenDiv(this.options.className + "_e")    this.widthE = Element.getDimensions(div).width;        div.parentNode.removeChild(div)    var div = this._createHiddenDiv(this.options.className + "_w")    this.widthW = Element.getDimensions(div).width;    div.parentNode.removeChild(div);    // Workaround for IE!!    if (isIE) {      this.heightS = $(this.getId() +"_row3").getDimensions().height;      this.heightN = $(this.getId() +"_row1").getDimensions().height;    }    // Safari size fix    if (/Konqueror|Safari|KHTML/.test(navigator.userAgent))      this.setSize(this.width, this.height);    if (this.doMaximize)      this.maximize();    if (this.doMinimize)      this.minimize();  },   _createHiddenDiv: function(className) {    var objBody = document.body;    var win = document.createElement("div");    win.setAttribute('id', this.element.id+ "_tmp");    win.className = className;    win.style.display = 'none';    win.innerHTML = '';    objBody.insertBefore(win, objBody.firstChild);    return win;  },    _storeLocation: function() {    if (this.storedLocation == null) {      this.storedLocation = {useTop: this.useTop, useLeft: this.useLeft,                              top: this.element.getStyle('top'), bottom: this.element.getStyle('bottom'),                             left: this.element.getStyle('left'), right: this.element.getStyle('right'),                             width: this.width, height: this.height };    }  },    _restoreLocation: function() {    if (this.storedLocation != null) {      this.useLeft = this.storedLocation.useLeft;      this.useTop = this.storedLocation.useTop;            this.element.setStyle(this.useLeft ? {left: this.storedLocation.left} : {right: this.storedLocation.right});      this.element.setStyle(this.useTop ? {top: this.storedLocation.top} : {bottom: this.storedLocation.bottom});      this.setSize(this.storedLocation.width, this.storedLocation.height);            Windows.resetOverflow();      this._removeStoreLocation();    }  },    _removeStoreLocation: function() {    this.storedLocation = null;  },    _saveCookie: function() {    if (this.cookie) {      var value = "";      if (this.useLeft)        value += "l:" +  (this.storedLocation ? this.storedLocation.left : this.element.getStyle('left'))      else        value += "r:" + (this.storedLocation ? this.storedLocation.right : this.element.getStyle('right'))      if (this.useTop)        value += ",t:" + (this.storedLocation ? this.storedLocation.top : this.element.getStyle('top'))      else        value += ",b:" + (this.storedLocation ? this.storedLocation.bottom :this.element.getStyle('bottom'))              value += "," + (this.storedLocation ? this.storedLocation.width : this.width);      value += "," + (this.storedLocation ? this.storedLocation.height : this.height);      value += "," + this.isMinimized();      value += "," + this.isMaximized();      WindowUtilities.setCookie(value, this.cookie)    }  },    _createWiredElement: function() {    if (! this.wiredElement) {      if (isIE)        this._getWindowBorderSize();      var div = document.createElement("div");      div.className = "wired_frame " + this.options.className + "_wired_frame";            div.style.position = 'absolute';      this.options.parent.insertBefore(div, this.options.parent.firstChild);      this.wiredElement = $(div);    }    if (this.useLeft)       this.wiredElement.setStyle({left: this.element.getStyle('left')});    else       this.wiredElement.setStyle({right: this.element.getStyle('right')});          if (this.useTop)       this.wiredElement.setStyle({top: this.element.getStyle('top')});    else       this.wiredElement.setStyle({bottom: this.element.getStyle('bottom')});    var dim = this.element.getDimensions();    this.wiredElement.setStyle({width: dim.width + "px", height: dim.height +"px"});    this.wiredElement.setStyle({zIndex: Windows.maxZIndex+30});    return this.wiredElement;  },    _hideWiredElement: function() {    if (! this.wiredElement || ! this.currentDrag)      return;    if (this.currentDrag == this.element)       this.currentDrag = null;    else {      if (this.useLeft)         this.element.setStyle({left: this.currentDrag.getStyle('left')});      else         this.element.setStyle({right: this.currentDrag.getStyle('right')});      if (this.useTop)         this.element.setStyle({top: this.currentDrag.getStyle('top')});      else         this.element.setStyle({bottom: this.currentDrag.getStyle('bottom')});      this.currentDrag.hide();      this.currentDrag = null;      if (this.doResize)        this.setSize(this.width, this.height);    }   },    _notify: function(eventName) {    if (this.options[eventName])      this.options[eventName](this);    else      Windows.notify(eventName, this);  }};// Windows containers, register all page windowsvar Windows = {  windows: [],  modalWindows: [],  observers: [],  focusedWindow: null,  maxZIndex: 0,  addObserver: function(observer) {    this.removeObserver(observer);    this.observers.push(observer);  },    removeObserver: function(observer) {      this.observers = this.observers.reject( function(o) { return o==observer });  },    //  onDestroy onStartResize onStartMove onResize onMove onEndResize onEndMove onFocus onBeforeShow onShow onHide onMinimize onMaximize onClose  notify: function(eventName, win) {      this.observers.each( function(o) {if(o[eventName]) o[eventName](eventName, win);});  },  // Gets window from its id  getWindow: function(id) {    return this.windows.detect(function(d) { return d.getId() ==id });  },  // Gets the last focused window  getFocusedWindow: function() {    return this.focusedWindow;  },  updateFocusedWindow: function() {    this.focusedWindow = this.windows.length >=2 ? this.windows[this.windows.length-2] : null;      },    // Registers a new window (called by Windows constructor)  register: function(win) {    this.windows.push(win);  },      // Add a modal window in the stack  addModalWindow: function(win) {    // Disable screen if first modal window    if (this.modalWindows.length == 0)      WindowUtilities.disableScreen(win.options.className, 'overlay_modal', win.getId());    else {      // Move overlay over all windows      if (Window.keepMultiModalWindow) {        $('overlay_modal').style.zIndex = Windows.maxZIndex + 10000;        Windows.maxZIndex += 10000;        WindowUtilities._hideSelect(this.modalWindows.last().getId());      }      // Hide current modal window      else        this.modalWindows.last().element.hide();      // Fucking IE select issue      WindowUtilities._showSelect(win.getId());    }          this.modalWindows.push(win);      },    removeModalWindow: function(win) {    this.modalWindows.pop();        // No more modal windows    if (this.modalWindows.length == 0)      WindowUtilities.enableScreen();         else {      if (Window.keepMultiModalWindow) {        this.modalWindows.last().toFront();        WindowUtilities._showSelect(this.modalWindows.last().getId());              }      else        this.modalWindows.last().element.show();    }  },    // Registers a new window (called by Windows constructor)  register: function(win) {    this.windows.push(win);  },    // Unregisters a window (called by Windows destructor)  unregister: function(win) {    this.windows = this.windows.reject(function(d) { return d==win });  },     // Closes all windows  closeAll: function() {      this.windows.each( function(w) {Windows.close(w.getId())} );  },    closeAllModalWindows: function() {    WindowUtilities.enableScreen();         this.modalWindows.each( function(win) {win.hide()});      },  // Minimizes a window with its id  minimize: function(id, event) {    var win = this.getWindow(id)    if (win && win.visible)      win.minimize();    Event.stop(event);  },    // Maximizes a window with its id  maximize: function(id, event) {    var win = this.getWindow(id)    if (win && win.visible)      win.maximize();    Event.stop(event);  },  // Closes a window with its id  close: function(id, event) {    var win = this.getWindow(id);    if (win)       win.close()//win.options.destroyOnClose ? win.close() : win.hide();    if (event)      Event.stop(event);  },    unsetOverflow: function(except) {        this.windows.each(function(d) { d.oldOverflow = d.getContent().getStyle("overflow") || "auto" ; d.getContent().setStyle({overflow: "hidden"}) });    if (except && except.oldOverflow)      except.getContent().setStyle({overflow: except.oldOverflow});  },  resetOverflow: function() {    this.windows.each(function(d) { if (d.oldOverflow) d.getContent().setStyle({overflow: d.oldOverflow}) });

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -