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

📄 treemenu.js

📁 客户管理crm xitong ,希望能给你带来帮助
💻 JS
字号:
function Folder(folderDescription, hreference) {   //constant data;   this.desc = folderDescription;   this.hreference = hreference;   this.id = -1;   this.navObj = 0;   this.iconImg = 0;   this.nodeImg = 0;   this.isLastNode = 0;   // dynamic data   this.isRoot = true;   this.isOpen = true;   this.iconSrc = "images/ftv2folderopen.gif";   this.iconRoot = "images/ftv2folderopen.gif"   this.children = new Array;   this.nChildren = 0;   // methods   this.initialize = initializeFolder;   this.setState = setStateFolder;   this.addChild = addChild;   this.createIndex = createEntryIndex;   this.hide = hideFolder;   this.display = display;   this.renderOb = drawFolder;   this.totalHeight = totalHeight;   this.subEntries = folderSubEntries;   this.outputLink = outputFolderLink;}function setStateFolder(isOpen) {   var subEntries;   var totalHeight;   var fIt = 0;   var i = 0;   if(isOpen == this.isOpen)       return;   if(browserVersion == 2) {       totalHeight = 0       for(i = 0; i < this.nChildren; i++)           totalHeight = totalHeight + this.children[i].navObj.clip.height;       subEntries = this.subEntries();       if(this.isOpen)           totalHeight = 0 - totalHeight;       for(fIt = this.id + subEntries + 1; fIt < nEntries; fIt++)           indexOfEntries[fIt].navObj.moveBy(0, totalHeight);   }   this.isOpen = isOpen;   propagateChangesInState(this);}function propagateChangesInState(folder) {   var i = 0;   if(folder.isOpen) {       if(folder.nodeImg) {           if(folder.isLastNode)               folder.nodeImg.src = "images/ftv2plastnode.gif";           else               folder.nodeImg.src = "images/ftv2mnode.gif";       }       if(this.isRoot)           folder.iconImg.src = "ftv2_mail.gif";       else           folder.iconImg.src = "images/ftv2folderopen.gif";       for(i = 0; i < folder.nChildren; i++)           folder.children[i].display();   }   else {       if(folder.nodeImg) {           if(folder.isLastNode)               folder.nodeImg.src = "images/ftv2plastnode.gif";           else               folder.nodeImg.src = "images/ftv2pnode.gif";       }       if(this.isRoot)           folder.iconImg.src = "ftv2_mail.gif";       else           folder.iconImg.src = "images/ftv2folderclosed.gif";       for(i = 0; i < folder.nChildren; i++)           folder.children[i].hide();   }}function hideFolder() {    if(browserVersion == 1) {        if(this.navObj.style.display == "none")            return;        this.navObj.style.display = "none";    }    else {        if(this.navObj.visibility == "hiden")            return;        this.navObj.visibility = "hiden";    }    this.setState(0);}function initializeFolder(level, lastNode, leftSide) {    var i = 0;    var j = 0;    var numberOfFolders;    var numberOfDocs;    nc = this.nChildren;    this.createIndex();    var nc;    var auxEv = "";    if(browserVersion > 0)        auxEv = "<A HREF='JavaScript: clickOnNode("+this.id+")'>";    else        auxEv = "<A>";    if(level > 0) {        if(lastNode) { //the last 'brother' in the children array           this.renderOb(leftSide + auxEv + "<IMG NAME='nodeIcon" + this.id + "' SRC='images/ftv2plastnode.gif' WIDTH=16 HEIGHT=22 BORDER=0></A>");           leftSide = leftSide + "<IMG SRC='images/ftv2blank.gif' WIDTH=16 HEIGHT=22>";           this.isLastNode = 1;        }        else {            this.renderOb(leftSide + auxEv + "<IMG NAME='nodeIcon" + this.id + "' SRC='images/ftv2mnode.gif' WIDTH=16 HEIGHT=22 BORDER=0></A>");            leftSide = leftSide + "<IMG SRC='images/ftv2vertline.gif' WIDTH=16 HEIGHT=22>";            this.isLastNode = 0;        }    }    else {        this.renderOb("");    }    if(nc > 0) {        level = level + 1;        for(i = 0; i < this.nChildren; i++) {            if(i == this.nChildren-1)                this.children[i].initialize(level, 1, leftSide);            else                this.children[i].initialize(level, 0, leftSide);        }    }}function drawFolder(leftSide) {    //alert(leftSide);    if(browserVersion == 2) {        if(!doc.yPos)          doc.yPos = 8;        doc.write("<LAYER ID='folder" + this.id + "' TOP=" + doc.yPos + " VISIBILITY=hiden>");    }    doc.write("<TABLE")    if(browserVersion == 1)        doc.write(" ID='folder" + this.id + "' STYLE='position:block;' ");    doc.write(" BORDER=0 CELLSPACING=0 CELLPADDING=0>");    doc.write("<TR><TD>");    doc.write(leftSide);    //this.outputLink();    doc.write("<IMG NAME='folderIcon" + this.id + "' ");    if(leftSide == '') {        doc.write("SRC='" + this.iconRoot+"' BORDER=0></A>");    }    else {        doc.write("SRC='" + this.iconSrc+"' BORDER=0></A>");    }    doc.write("</TD><TD NOWRAP>");    doc.write("<DIV CLASS=\"fldrroot\">");    if(leftSide == '') {       if(USETEXTLINKS) {          this.outputLink();          doc.write(this.desc + "</A>");       }       else         doc.write(this.desc);    }    else {        doc.write("<A HREF='JavaScript: clickOnNode("+this.id+")'>");        //doc.write("<A HREF='" + this.hreference + "' target='right'>");        doc.write(this.desc + "</A>");    }    doc.write("</DIV>");    doc.write("</TD>");    doc.write("</TABLE>");    if(browserVersion == 2) {        doc.write("</LAYER>");    }    if(browserVersion == 1) {        this.navObj = doc.all["folder"+this.id];        this.iconImg = doc.all["folderIcon"+this.id]        this.nodeImg = doc.all["nodeIcon"+this.id]    }    else if(browserVersion == 2) {        this.navObj = doc.layers["folder"+this.id];        this.iconImg = this.navObj.document.images["folderIcon"+this.id];        this.nodeImg = this.navObj.document.images["nodeIcon"+this.id];        doc.yPos = doc.yPos + this.navObj.clip.height;    }}function outputFolderLink() {    if(this.hreference) {        doc.write("<A HREF='" + this.hreference + "' TARGET=\"right\" ")        if(browserVersion > 0) {            doc.write("onClick='JavaScript: clickOnFolder("+this.id+")'")        }        doc.write(">")    }    else        doc.write("<A>")}function addChild(childNode) {    this.children[this.nChildren] = childNode;    this.nChildren++;    return(childNode);}function folderSubEntries() {    var i = 0;    var se = this.nChildren;    for(i = 0; i < this.nChildren; i++) {        if(this.children[i].children) //is a folder            se = se + this.children[i].subEntries();    }    return(se)}// Definition of class Item (a document or link inside a Folder)function Item(itemDescription, hreference, itemLink, itemImg) // Constructor{    // constant data    this.desc = itemDescription    this.link = itemLink    this.hreference = hreference;    this.id = -1;     //initialized in initalize()    this.navObj = 0;  //initialized in render()    this.iconImg = 0; //initialized in render()    //     this.iconSrc = itemImg;    // methods    this.initialize = initializeItem ;    this.createIndex = createEntryIndex;    this.hide = hideItem;    this.display = display;    this.renderOb = drawItem;    this.totalHeight = totalHeight;}function hideItem() {    if(browserVersion == 1) {        if(this.navObj.style.display == "none")            return;        this.navObj.style.display = "none"    }    else {        if(this.navObj.visibility == "hiden")            return;        this.navObj.visibility = "hiden";    }}function initializeItem(level, lastNode, leftSide) {    this.createIndex();    if(level > 0) {        if(lastNode) { //the last 'brother' in the children array            this.renderOb(leftSide + "<IMG SRC='images/ftv2lastnode.gif' WIDTH=16 HEIGHT=22>")            leftSide = leftSide + "<IMG SRC='images/ftv2blank.gif' WIDTH=16 HEIGHT=22>"        }        else {            this.renderOb(leftSide + "<IMG SRC='images/ftv2node.gif' WIDTH=16 HEIGHT=22>")            leftSide = leftSide + "<IMG SRC='images/ftv2vertline.gif' WIDTH=16 HEIGHT=22>"        }    }    else        this.renderOb("")}function drawItem(leftSide) {    if(browserVersion == 2)    doc.write("<LAYER ID='item" + this.id + "' TOP=" + doc.yPos + " VISIBILITY=hiden>");    doc.write("<TABLE ");    if(browserVersion == 1)    doc.write(" ID='item" + this.id + "' STYLE='position:block;' ");    doc.write(" BORDER=0 CELLSPACING=0 CELLPADDING=0>");    doc.write("<TR><TD>");    doc.write(leftSide);    if(this.link != "")        doc.write("<A HREF=" + this.link + ">");    doc.write("<IMG ID='itemIcon"+this.id+"' ")    doc.write("SRC='"+this.iconSrc+"' BORDER=0>")    if(this.link != "")        doc.write("</A>");    doc.write("</TD><TD NOWRAP>");    doc.write("<DIV CLASS=\"fldritem\">");    if(USETEXTLINKS) {        if(this.link != "")            doc.write("<A HREF=" + this.link + ">" + this.desc + "</A>");        else            doc.write(this.desc);    }    else {        doc.write(this.desc);    }    doc.write("</DIV>");    doc.write("</TABLE>")    if(browserVersion == 2)        doc.write("</layer>");    if(browserVersion == 1) {        this.navObj = doc.all["item"+this.id]        this.iconImg = doc.all["itemIcon"+this.id]    }    else if(browserVersion == 2) {        this.navObj = doc.layers["item"+this.id];        this.iconImg = this.navObj.document.images["itemIcon"+this.id];        doc.yPos = doc.yPos+this.navObj.clip.height;    }}// Methods common to both objects (pseudo-inheritance)function display() {    if(browserVersion == 1)        this.navObj.style.display = "block";    else        this.navObj.visibility = "show";}function createEntryIndex() {    this.id = nEntries;    indexOfEntries[nEntries] = this;    nEntries++;}// total height of subEntries openfunction totalHeight() { //used with browserVersion == 2    var h = this.navObj.clip.height;    var i = 0;    if(this.isOpen) { // is a folder and _is_ open        for(i = 0 ; i < this.nChildren; i++)            h = h + this.children[i].totalHeight();    }    return h}// Eventsfunction clickOnFolder(folderId) {    var clicked = indexOfEntries[folderId];    if(!clicked.isOpen)        clickOnNode(folderId);    if(clicked.isSelected)        return;}function clickOnNode(folderId) {    var clickedFolder = 0;    var state = 0;    clickedFolder = indexOfEntries[folderId];    state = clickedFolder.isOpen;    clickedFolder.setState(!state); //open<->close}function initializeDocument() {    if(doc.all)        browserVersion = 1; //IE4    else if(doc.layers)        browserVersion = 2; //NS4    else        browserVersion = 0; //other    foldersTree.initialize(0, 1, "");    foldersTree.display();    if(browserVersion > 0) {        doc.write("<LAYER TOP="+indexOfEntries[nEntries-1].navObj.top+">&nbsp;</LAYER>");        // close the whole tree        clickOnNode(0);        // open the root folder        clickOnNode(0);    }}function initializeDocument1() {    if(doc.all)        browserVersion = 1; //IE4    else if(doc.layers)        browserVersion = 2; //NS4    else        browserVersion = 0; //other    foldersTree1.initialize(0, 1, "");    foldersTree1.display();    if(browserVersion > 0) {        doc.write("<LAYER TOP="+indexOfEntries[nEntries-1].navObj.top+">&nbsp;</LAYER>");        // close the whole tree        clickOnNode(0);        // open the root folder        clickOnNode(0);    }}// Auxiliary Functions for Folder-Treee backward compatibilityfunction gFldr(description, hreference) {    folder = new Folder(description, hreference);    return(folder);}function gLnk(target, description, linkData, itemImg) {    fullLink = ""    if(target == 0) {        if(linkData != "")            fullLink = "'"+linkData+"' TARGET=\"right\"";        else            fullLink = "";    }    else if(target == 1) {        if(linkData != "")            fullLink = "'"+linkData+"' TARGET=\"_top\"";        else            fullLink = "";    }    else { // target == 2        if(linkData != "")            fullLink = "'"+linkData+"' TARGET=\"content\"";        else            fullLink = "";    }      linkItem = new Item(description, linkData, fullLink, itemImg)    return linkItem;}function insFldr(parentFolder, childFolder) {    return(parentFolder.addChild(childFolder));}function insDoc(parentFolder, document) {    parentFolder.addChild(document);}// Global variablesUSETEXTLINKS = 1;indexOfEntries = new Array;nEntries = 0;doc = document;browserVersion = 0;selectedFolder = 0;        

⌨️ 快捷键说明

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