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

📄 window.js

📁 本系统内置的测评模块可以根据学生的学习成绩以及往日的综合表现对学生的综合素质分进行自动评分操作
💻 JS
📖 第 1 页 / 共 5 页
字号:
  },    // Detroys itself when closing   setDestroyOnClose: function() {    this.options.destroyOnClose = true;  },    setConstraint: function(bool, padding) {    this.constraint = bool;    this.constraintPad = Object.extend(this.constraintPad, padding || {});    // Reset location to apply constraint    if (this.useTop && this.useLeft)      this.setLocation(parseFloat(this.element.style.top), parseFloat(this.element.style.left));  },    // initDrag event  _initDrag: function(event) {    // No resize on minimized window    if (Event.element(event) == this.sizer && this.isMinimized())      return;    // No move on maximzed window    if (Event.element(event) != this.sizer && this.isMaximized())      return;          if (Prototype.Browser.IE && this.heightN == 0)      this._getWindowBorderSize();        // Get pointer X,Y    this.pointer = [this._round(Event.pointerX(event), this.options.gridX), this._round(Event.pointerY(event), this.options.gridY)];    if (this.options.wiredDrag)       this.currentDrag = this._createWiredElement();    else      this.currentDrag = this.element;          // Resize    if (Event.element(event) == this.sizer) {      this.doResize = true;      this.widthOrg = this.width;      this.heightOrg = this.height;      this.bottomOrg = parseFloat(this.element.getStyle('bottom'));      this.rightOrg = parseFloat(this.element.getStyle('right'));      this._notify("onStartResize");    }    else {      this.doResize = false;      // Check if click on close button,       var closeButton = $(this.getId() + '_close');      if (closeButton && Position.within(closeButton, this.pointer[0], this.pointer[1])) {        this.currentDrag = null;        return;      }      this.toFront();      if (! this.options.draggable)         return;      this._notify("onStartMove");    }        // Register global event to capture mouseUp and mouseMove    Event.observe(document, "mouseup", this.eventMouseUp, false);    Event.observe(document, "mousemove", this.eventMouseMove, false);        // Add an invisible div to keep catching mouse event over iframes    WindowUtilities.disableScreen('__invisible__', '__invisible__', this.overlayOpacity);    // Stop selection while dragging    document.body.ondrag = function () { return false; };    document.body.onselectstart = function () { return false; };        this.currentDrag.show();    Event.stop(event);  },    _round: function(val, round) {    return round == 1 ? val  : val = Math.floor(val / round) * round;  },  // updateDrag event  _updateDrag: function(event) {    var pointer =  [this._round(Event.pointerX(event), this.options.gridX), this._round(Event.pointerY(event), this.options.gridY)];      var dx = pointer[0] - this.pointer[0];    var dy = pointer[1] - this.pointer[1];        // Resize case, update width/height    if (this.doResize) {      var w = this.widthOrg + dx;      var h = this.heightOrg + dy;            dx = this.width - this.widthOrg      dy = this.height - this.heightOrg            // Check if it's a right position, update it to keep upper-left corner at the same position      if (this.useLeft)         w = this._updateWidthConstraint(w)      else         this.currentDrag.setStyle({right: (this.rightOrg -dx) + 'px'});      // Check if it's a bottom position, update it to keep upper-left corner at the same position      if (this.useTop)         h = this._updateHeightConstraint(h)      else        this.currentDrag.setStyle({bottom: (this.bottomOrg -dy) + 'px'});              this.setSize(w , h);      this._notify("onResize");    }    // Move case, update top/left    else {      this.pointer = pointer;            if (this.useLeft) {        var left =  parseFloat(this.currentDrag.getStyle('left')) + dx;        var newLeft = this._updateLeftConstraint(left);        // Keep mouse pointer correct        this.pointer[0] += newLeft-left;        this.currentDrag.setStyle({left: newLeft + 'px'});      }      else         this.currentDrag.setStyle({right: parseFloat(this.currentDrag.getStyle('right')) - dx + 'px'});            if (this.useTop) {        var top =  parseFloat(this.currentDrag.getStyle('top')) + dy;        var newTop = this._updateTopConstraint(top);        // Keep mouse pointer correct        this.pointer[1] += newTop - top;        this.currentDrag.setStyle({top: newTop + 'px'});      }      else         this.currentDrag.setStyle({bottom: parseFloat(this.currentDrag.getStyle('bottom')) - dy + 'px'});      this._notify("onMove");    }    if (this.iefix)       this._fixIEOverlapping();           this._removeStoreLocation();    Event.stop(event);  },   // endDrag callback   _endDrag: function(event) {    // Remove temporary div over iframes     WindowUtilities.enableScreen('__invisible__');        if (this.doResize)      this._notify("onEndResize");    else      this._notify("onEndMove");        // Release event observing    Event.stopObserving(document, "mouseup", this.eventMouseUp,false);    Event.stopObserving(document, "mousemove", this.eventMouseMove, false);    Event.stop(event);        this._hideWiredElement();    // Store new location/size if need be    this._saveCookie()          // Restore selection    document.body.ondrag = null;    document.body.onselectstart = null;  },  _updateLeftConstraint: function(left) {    if (this.constraint && this.useLeft && this.useTop) {      var width = this.options.parent == document.body ? WindowUtilities.getPageSize().windowWidth : this.options.parent.getDimensions().width;      if (left < this.constraintPad.left)        left = this.constraintPad.left;      if (left + this.width + this.widthE + this.widthW > width - this.constraintPad.right)         left = width - this.constraintPad.right - this.width - this.widthE - this.widthW;    }    return left;  },    _updateTopConstraint: function(top) {    if (this.constraint && this.useLeft && this.useTop) {              var height = this.options.parent == document.body ? WindowUtilities.getPageSize().windowHeight : this.options.parent.getDimensions().height;            var h = this.height + this.heightN + this.heightS;      if (top < this.constraintPad.top)        top = this.constraintPad.top;      if (top + h > height - this.constraintPad.bottom)         top = height - this.constraintPad.bottom - h;    }    return top;  },    _updateWidthConstraint: function(w) {    if (this.constraint && this.useLeft && this.useTop) {      var width = this.options.parent == document.body ? WindowUtilities.getPageSize().windowWidth : this.options.parent.getDimensions().width;      var left =  parseFloat(this.element.getStyle("left"));      if (left + w + this.widthE + this.widthW > width - this.constraintPad.right)         w = width - this.constraintPad.right - left - this.widthE - this.widthW;    }    return w;  },    _updateHeightConstraint: function(h) {    if (this.constraint && this.useLeft && this.useTop) {      var height = this.options.parent == document.body ? WindowUtilities.getPageSize().windowHeight : this.options.parent.getDimensions().height;      var top =  parseFloat(this.element.getStyle("top"));      if (top + h + this.heightN + this.heightS > height - this.constraintPad.bottom)         h = height - this.constraintPad.bottom - top - this.heightN - this.heightS;    }    return h;  },      // Creates HTML window code  _createWindow: function(id) {    var className = this.options.className;    var win = document.createElement("div");    win.setAttribute('id', id);    win.className = "dialog";    var content;    if (this.options.url)      content= "<iframe frameborder=\"0\" name=\"" + id + "_content\"  id=\"" + id + "_content\" src=\"" + this.options.url + "\"> </iframe>";    else      content ="<div id=\"" + id + "_content\" class=\"" +className + "_content\"> </div>";    var closeDiv = this.options.closable ? "<div class='"+ className +"_close' id='"+ id +"_close' onclick='Windows.close(\""+ id +"\", event)'> </div>" : "";    var minDiv = this.options.minimizable ? "<div class='"+ className + "_minimize' id='"+ id +"_minimize' onclick='Windows.minimize(\""+ id +"\", event)'> </div>" : "";    var maxDiv = this.options.maximizable ? "<div class='"+ className + "_maximize' id='"+ id +"_maximize' onclick='Windows.maximize(\""+ id +"\", event)'> </div>" : "";    var seAttributes = this.options.resizable ? "class='" + className + "_sizer' id='" + id + "_sizer'" : "class='"  + className + "_se'";    var blank = "../themes/default/blank.gif";        win.innerHTML = closeDiv + minDiv + maxDiv + "\      <table id='"+ id +"_row1' class=\"top table_window\">\        <tr>\          <td class='"+ className +"_nw'></td>\          <td class='"+ className +"_n'><div id='"+ id +"_top' class='"+ className +"_title title_window'>"+ this.options.title +"</div></td>\          <td class='"+ className +"_ne'></td>\        </tr>\      </table>\      <table id='"+ id +"_row2' class=\"mid table_window\">\        <tr>\          <td class='"+ className +"_w'></td>\            <td id='"+ id +"_table_content' class='"+ className +"_content' valign='top'>" + content + "</td>\          <td class='"+ className +"_e'></td>\        </tr>\      </table>\        <table id='"+ id +"_row3' class=\"bot table_window\">\        <tr>\          <td class='"+ className +"_sw'></td>\            <td class='"+ className +"_s'><div id='"+ id +"_bottom' class='status_bar'><span style='float:left; width:1px; height:1px'></span></div></td>\            <td " + seAttributes + "></td>\        </tr>\      </table>\    ";    Element.hide(win);    this.options.parent.insertBefore(win, this.options.parent.firstChild);    Event.observe($(id + "_content"), "load", this.options.onload);    return win;  },      changeClassName: function(newClassName) {        var className = this.options.className;    var id = this.getId();    $A(["_close", "_minimize", "_maximize", "_sizer", "_content"]).each(function(value) { this._toggleClassName($(id + value), className + value, newClassName + value) }.bind(this));    this._toggleClassName($(id + "_top"), className + "_title", newClassName + "_title");    $$("#" + id + " td").each(function(td) {td.className = td.className.sub(className,newClassName); });    this.options.className = newClassName;  },    _toggleClassName: function(element, oldClassName, newClassName) {     if (element) {      element.removeClassName(oldClassName);      element.addClassName(newClassName);    }  },    // Sets window location  setLocation: function(top, left) {    top = this._updateTopConstraint(top);    left = this._updateLeftConstraint(left);    var e = this.currentDrag || this.element;    e.setStyle({top: top + 'px'});    e.setStyle({left: left + 'px'});    this.useLeft = true;    this.useTop = true;  },      getLocation: function() {    var location = {};    if (this.useTop)      location = Object.extend(location, {top: this.element.getStyle("top")});    else      location = Object.extend(location, {bottom: this.element.getStyle("bottom")});    if (this.useLeft)      location = Object.extend(location, {left: this.element.getStyle("left")});    else      location = Object.extend(location, {right: this.element.getStyle("right")});        return location;  },    // Gets window size  getSize: function() {    return {width: this.width, height: this.height};  },      // Sets window size  setSize: function(width, height, useEffect) {        width = parseFloat(width);    height = parseFloat(height);        // Check min and max size    if (!this.minimized && width < this.options.minWidth)      width = this.options.minWidth;    if (!this.minimized && height < this.options.minHeight)      height = this.options.minHeight;          if (this.options. maxHeight && height > this.options. maxHeight)      height = this.options. maxHeight;    if (this.options. maxWidth && width > this.options. maxWidth)      width = this.options. maxWidth;        if (this.useTop && this.useLeft && Window.hasEffectLib && Effect.ResizeWindow && useEffect) {      new Effect.ResizeWindow(this, null, null, width, height, {duration: Window.resizeEffectDuration});    } else {      this.width = width;      this.height = height;      var e = this.currentDrag ? this.currentDrag : this.element;      e.setStyle({width: width + this.widthW + this.widthE + "px"})      e.setStyle({height: height  + this.heightN + this.heightS + "px"})      // Update content size      if (!this.currentDrag || this.currentDrag == this.element) {        var content = $(this.element.id + '_content');        content.setStyle({height: height  + 'px'});        content.setStyle({width: width  + 'px'});      }    }  },    updateHeight: function() {    this.setSize(this.width, this.content.scrollHeight, true);  },    updateWidth: function() {    this.setSize(this.content.scrollWidth, this.height, true);  },    // Brings window to front  toFront: function() {    if (this.element.style.zIndex < Windows.maxZIndex)        this.setZIndex(Windows.maxZIndex + 1);    if (this.iefix)       this._fixIEOverlapping();   },     getBounds: function(insideOnly) {    if (! this.width || !this.height || !this.visible)  

⌨️ 快捷键说明

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