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

📄 menu.ie.js

📁 Bindows 1.01 完全版 Bindows 框架提供给你: 基于类的面向对象 API; 一个完整的窗口系统
💻 JS
📖 第 1 页 / 共 5 页
字号:
};function RadioButtonMenuItem(sLabelText, bChecked, sRadioGroupName, fAction, oSubMenu){    this.MenuItem = MenuItem;    this.MenuItem(sLabelText, fAction, null, oSubMenu);    this.checked = bChecked;    this.radioGroupName = sRadioGroupName;}RadioButtonMenuItem.prototype = new MenuItem;RadioButtonMenuItem.prototype.getIconHtml = function(){    return "<span class=\"radio-button\">" + (this.checked ? "n" : "&nbsp;") + "</span>";} ;RadioButtonMenuItem.prototype.getIconCellHtml = function(){    return "<td class=\"icon-cell\">" + this.makeDisabledContainer(this.getIconHtml()) + "</td>";} ;RadioButtonMenuItem.prototype.getCssClass = function(){    var s = (this.checked ? " checked" : "");    if (this.disabled && this._selected)        return "disabled-hover" + s;    else if (this.disabled)        return "disabled" + s;    else if (this._selected)        return "hover" + s;    return s;};RadioButtonMenuItem.prototype._menuItem_dispatchAction = MenuItem.prototype.dispatchAction;RadioButtonMenuItem.prototype.dispatchAction = function(){    if (!this.disabled)    {        if (!this.checked)        {            var items = this.parentMenu.items;            var l = items.length;            for (var i = 0; i < l; i++)            {                if (items[i]instanceof RadioButtonMenuItem)                {                    if (items[i].radioGroupName == this.radioGroupName)                    {                        items[i].checked = items[i] == this;                    }                }            }            this.parentMenu.invalidate();        }        this._menuItem_dispatchAction();        this.parentMenu.closeAllMenus();    }};function MenuSeparator(){    this.MenuItem = MenuItem;    this.MenuItem();}MenuSeparator.prototype = new MenuItem;MenuSeparator.prototype.toHtml = function(){    return "<tr class=\""+this.getCssClass()+"\""+(!this.visible?" style=\"display: none\"":"")+"><td colspan=\"4\">"        + "<div class=\"separator-line\"></div>" + "</td></tr>";} ;MenuSeparator.prototype.getCssClass = function(){    return "separator";} ;function MenuBar(){    this.items = [];    this.parentMenu = null;    this.parentMenuItem = null;    this.shownSubMenu = null;    this._aboutToShowSubMenu = false;    this.active = false;    this.id = menuCache.getId();    menuCache[this.id] = this;}MenuBar.prototype = new Menu;MenuBar.prototype._document = null;MenuBar.leftMouseButton = 1;MenuBar.prototype.toHtml = function(){    var items = this.items;    var l = items.length;    var itemsHtml = new Array(l);    for (var i = 0; i < l; i++)        itemsHtml[i] = items[i].toHtml();    return "<div class=\"menu-bar\" id=\""+this.id+"\">" + itemsHtml.join("") + "</div>";};MenuBar.prototype.invalidate = function(){    if (this._htmlElement)    {        this.detachEvents();        var oldEl = this._htmlElement;        var newEl = this.create(this._document);        oldEl.parentNode.replaceChild(newEl, oldEl);    }};MenuBar.prototype.createPopup = function(){} ;MenuBar.prototype.getPopup = function(){} ;MenuBar.prototype.drawMenu = function(){} ;MenuBar.prototype.getDocument = function(){    return this._document;} ;MenuBar.prototype.show = function(left, top, w, h){} ;MenuBar.prototype.isShown = function(){    return true;} ;MenuBar.prototype.fixSize = function(){}MenuBar.prototype.getWidth = function(){    return this._htmlElement.offsetWidth;} ;MenuBar.prototype.getHeight = function(){    return this._htmlElement.offsetHeight;} ;MenuBar.prototype.getPreferredWidth = function(){    var el = this._htmlElement;    el.runtimStyle.whiteSpace = "nowrap";    var sw = el.scrollWidth;    el.runtimStyle.whiteSpace = "";    return sw + parseInt(el.currentStyle.borderLeftWidth) + parseInt(el.currentStyle.borderRightWidth);};MenuBar.prototype.getPreferredHeight = function(){    var el = this._htmlElement;    el.runtimStyle.whiteSpace = "nowrap";    var sw = el.scrollHeight;    el.runtimStyle.whiteSpace = "";    return sw + parseInt(el.currentStyle.borderTopWidth) + parseInt(el.currentStyle.borderBottomWidth);};MenuBar.prototype.getLeft = function(){    return posLib.getScreenLeft(this._htmlElement);} ;MenuBar.prototype.getTop = function(){    return posLib.getScreenLeft(this._htmlElement);} ;MenuBar.prototype.setLeft = function(l){} ;MenuBar.prototype.setTop = function(t){} ;MenuBar.prototype.setLocation = function(l, t){} ;MenuBar.prototype.setRect = function(l, t, w, h){} ;MenuBar.prototype.getInsetLeft = function(){    return parseInt(this._htmlElement.currentStyle.borderLeftWidth);} ;MenuBar.prototype.getInsetRight = function(){    return parseInt(this._htmlElement.currentStyle.borderRightWidth);} ;MenuBar.prototype.getInsetTop = function(){    return parseInt(this._htmlElement.currentStyle.borderTopWidth);} ;MenuBar.prototype.getInsetBottom = function(){    return parseInt(this._htmlElement.currentStyle.borderBottomWidth);} ;MenuBar.prototype.fixScrollButtons = function(){} ;MenuBar.prototype.fixScrollEnabledState = function(){} ;MenuBar.prototype.makeEventListeners = function(){    if (this.eventListeners != null)        return;    this.eventListeners = {        onmouseover: new Function("eventListeners.menuBar.onmouseover(\"" + this.id + "\")"),        onmouseout: new Function("eventListeners.menuBar.onmouseout(\"" + this.id + "\")"),        onmousedown: new Function("eventListeners.menuBar.onmousedown(\"" + this.id + "\")"),        onkeydown: new Function("eventListeners.menuBar.onkeydown(\"" + this.id + "\")"),        onunload: new Function("eventListeners.menuBar.onunload(\"" + this.id + "\")")    };};MenuBar.prototype.detachEvents = function(){    if (this.eventListeners == null)        return;    this._htmlElement.detachEvent("onmouseover", this.eventListeners.onmouseover);    this._htmlElement.detachEvent("onmouseout", this.eventListeners.onmouseout);    this._htmlElement.detachEvent("onmousedown", this.eventListeners.onmousedown);    this._document.detachEvent("onkeydown", this.eventListeners.onkeydown);    window.detachEvent("onunload", this.eventListeners.onunload);}MenuBar.prototype.hookupMenu = function(element){    if (!this._document)        this._document = element.document;    this.detachEvents();    this.makeEventListeners();    this._htmlElement = element;    element.unselectable = "on";    var cs = element.childNodes;    var items = this.items;    var l = cs.length;    for (var i = 0; i < l; i++)    {        items[i]._htmlElement = cs[i];        cs[i]._menuItem = items[i];    }    element.attachEvent("onmouseover", this.eventListeners.onmouseover);    element.attachEvent("onmouseout", this.eventListeners.onmouseout);    element.attachEvent("onmousedown", this.eventListeners.onmousedown);    this._document.attachEvent("onkeydown", this.eventListeners.onkeydown);    window.attachEvent("onunload", this.eventListeners.onunload);};function getMenuItemElement(el){    while (el != null && el._menuItem == null)        el = el.parentNode;    return el;}function getTrElement(el){    while (el != null && el.tagName != "TR")        el = el.parentNode;    return el;}MenuBar.prototype.write = function(oDocument){    this._document = oDocument || document;    this._document.write(this.toHtml());    var el = this._document.getElementById(this.id);    this.hookupMenu(el);};MenuBar.prototype.create = function(oDocument){    this._document = oDocument || document;    var dummyDiv = this._document.createElement("DIV");    dummyDiv.innerHTML = this.toHtml();    var el = dummyDiv.removeChild(dummyDiv.firstChild);    this.hookupMenu(el);    return el;};MenuBar.prototype.handleKeyEvent = function(e){    if (this.getActiveState() == "open")        return;    var nKeyCode = e.keyCode;    if (this.active && e[Menu.keyboardAccelProperty])    {        e.returnValue = false;        e.keyCode = 0;    }    if (nKeyCode == Menu.keyboardAccelKey || nKeyCode == Menu.keyboardAccelKey2)    {        if (!e.repeat)        {            this.toggleActive();        }        e.returnValue = false;        e.keyCode = 0;        return;    }    if (!this.active)    {        return;    }    switch (nKeyCode)    {        case 39:        this.goToNextMenuItem();        e.returnValue = false;        break;        case 37:        this.goToPreviousMenuItem();        e.returnValue = false;        break;        case 40:        case 38:        case 13:        var mi = this.items[this.getSelectedIndex()];        if (mi)        {            mi.dispatchAction();            if (mi.subMenu)                mi.subMenu.setSelectedIndex(0);        }        e.returnValue = false;        break;        case 27:        this.setActive(false);        e.returnValue = false;        break;        default:        var c = String.fromCharCode(nKeyCode).toLowerCase();        var items = this.items;        var l = items.length;        for (var i = 0; i < l; i++)        {            if (items[i].mnemonic == c)            {                items[i].dispatchAction();                e.returnValue = false;                break;            }        }    }};MenuBar.prototype.getMenuBar = function(){    return this;} ;MenuBar.prototype._menu_goToNextMenuItem = Menu.prototype.goToNextMenuItem;MenuBar.prototype.goToNextMenuItem = function(){    var expand = this.getActiveState() == "open";    this._menu_goToNextMenuItem();    var mi = this.items[this.getSelectedIndex()];    if (expand && mi != null)    {        window.setTimeout("eventListeners.menuBar.ongotonextmenuitem(\"" + this.id + "\")", 1);    }};MenuBar.prototype._menu_goToPreviousMenuItem = Menu.prototype.goToPreviousMenuItem;MenuBar.prototype.goToPreviousMenuItem = function(){    var expand = this.getActiveState() == "open";    this._menu_goToPreviousMenuItem();    var mi = this.items[this.getSelectedIndex()];    if (expand && mi != null)    {        window.setTimeout("eventListeners.menuBar.ongotopreviousmenuitem(\"" + this.id + "\")", 1);    }};MenuBar.prototype._menu_setSelectedIndex = Menu.prototype.setSelectedIndex;MenuBar.prototype.setSelectedIndex = function(nIndex){    this._menu_setSelectedIndex(nIndex);    this.active = nIndex != -1;};MenuBar.prototype.setActive = function(bActive){    if (this.active != bActive)    {        this.active = Boolean(bActive);        if (this.active)        {            this.setSelectedIndex(0);            this.backupFocused();            window.focus();        }        else        {            this.setSelectedIndex(-1);            this.restoreFocused();        }    }};MenuBar.prototype.toggleActive = function(){    if (this.getActiveState() == "active")        this.setActive(false);    else if (this.getActiveState() == "inactive")        this.setActive(true);};MenuBar.prototype.getActiveState = function(){    if (this.shownSubMenu != null || this._aboutToShowSubMenu)        return "open";    else if (this.active)        return "active";    else        return "inactive";};MenuBar.prototype.backupFocused = function(){    this._activeElement = this._document.activeElement;} ;MenuBar.prototype.restoreFocused = function(){    try    {        this._activeElement.focus();    }    catch (ex)    {    }    delete this._activeElement;};MenuBar.prototype.destroy = function(){    var l = this.items.length;    for (var i = l - 1; i >= 0; i--)        this.items[i].destroy();    this.detachEvents();    this._activeElement = null;    this._htmlElement = null;    this._document = null;    this.items = [];

⌨️ 快捷键说明

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