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

📄 ftiens4.js

📁 php 邮件系统 php 邮件系统
💻 JS
📖 第 1 页 / 共 2 页
字号:
{  //define a .xID in all nodes (folders and items) if you want to PERVESTATE that  //work when the tree changes. The value eXternal value must be unique for each  //node and must node change when other nodes are added or removed  //The value may be numeric or string, but cannot have the same char used in cookieCutter  if (typeof this.xID != "undefined")     return this.xID  else    return this.id} // Events // *********************************************************  function clickOnFolder(folderId) {     var clicked = findObj(folderId)    if (!clicked.isOpen) {      clickOnNodeObj(clicked)     }    if (lastOpenedFolder != null && lastOpenedFolder != folderId)      clickOnNode(lastOpenedFolder); //sets lastOpenedFolder to null    if (clicked.nChildren==0) {      lastOpenedFolder = folderId;      clicked.isLastOpenedfolder = true    }    if (isLinked(clicked.hreference)) {        highlightObjLink(clicked);    }}  function clickOnNode(folderId) {   clickOnNodeObj(findObj(folderId))}function clickOnNodeObj(folderObj) {   var state = 0   var currentOpen   state = folderObj.isOpen   folderObj.setState(!state) //open<->close    if (folderObj.id!=foldersTree.id && PERSERVESTATE)  {    currentOpen = GetCookie("clickedFolder")    if (currentOpen == null)      currentOpen = ""    if (!folderObj.isOpen) //closing    {      currentOpen = currentOpen.replace(folderObj.getID()+cookieCutter, "")      SetCookie("clickedFolder", currentOpen)    }    else      SetCookie("clickedFolder", currentOpen+folderObj.getID()+cookieCutter)  }}function clickOnLink(clickedId, target, windowName) {      highlightObjLink(findObj(clickedId));    if (isLinked(target)) {        window.open(target,windowName);    }}function ld  (){	return document.links.length-1} // Auxiliary Functions // ******************* function findObj(id){  var i=0;  var nodeObj;  if (typeof foldersTree.xID != "undefined") {    nodeObj = indexOfEntries[i];    for(i=0;i<nEntries&&indexOfEntries[i].xID!=id;i++) //may need optimization      ;    id = i  }  if (id >= nEntries)    return null; //example: node removed in DB  else    return indexOfEntries[id];}function isLinked(hrefText) {    var result = true;    result = (result && hrefText !=null);    result = (result && hrefText != '');    result = (result && hrefText.indexOf('undefined') < 0);    result = (result && hrefText.indexOf('parent.op') < 0);    return result;}// Do highlighting by changing background and foreg. colors of folder or doc textfunction highlightObjLink(nodeObj) {  if (!HIGHLIGHT || nodeObj==null || nodeObj.maySelect==false) {//node deleted in DB     return;  }  if (browserVersion == 1 || browserVersion == 3) {    var clickedDOMObj = getElById('itemTextLink'+nodeObj.id);    if (clickedDOMObj != null) {        if (lastClicked != null) {            var prevClickedDOMObj = getElById('itemTextLink'+lastClicked.id);            prevClickedDOMObj.style.color=lastClickedColor;            prevClickedDOMObj.style.backgroundColor=lastClickedBgColor;        }                lastClickedColor    = clickedDOMObj.style.color;        lastClickedBgColor  = clickedDOMObj.style.backgroundColor;        clickedDOMObj.style.color=HIGHLIGHT_COLOR;        clickedDOMObj.style.backgroundColor=HIGHLIGHT_BG;    }  }  lastClicked = nodeObj;  if (PERSERVESTATE)    SetCookie('highlightedTreeviewLink', nodeObj.getID());}function gFld(description, hreference) {   folder = new Folder(description, hreference)   return folder }  function gLnk(optionFlags, description, linkData, img) {   var fullLink = "";  var targetFlag = "";  var target = "";  var protocolFlag = "";  var protocol = "";  if (optionFlags>=0) //is numeric (old style) or empty (error)  {    return oldGLnk(optionFlags, description, linkData)  }  targetFlag = optionFlags.charAt(0)  if (targetFlag=="B")    target = "_blank"  if (targetFlag=="P")    target = "_parent"  if (targetFlag=="R")    target = "basefrm"  if (targetFlag=="S")    target = "_self"  if (targetFlag=="T")    target = "_top"  if (optionFlags.length > 1) {    protocolFlag = optionFlags.charAt(1)    if (protocolFlag=="h")      protocol = "http://"    if (protocolFlag=="s")      protocol = "https://"    if (protocolFlag=="f")      protocol = "ftp://"    if (protocolFlag=="m")      protocol = "mailto:"  }  fullLink = "'" + protocol + linkData + "' target=" + target  linkItem = new Item(description, protocol+linkData, target, img)  return linkItem } //Function created Aug 1, 2002 for backwards compatibility purposesfunction oldGLnk(target, description, linkData){  var fullLink = "";  //Backwards compatibility code  if (USEFRAMES)  {	  if (target==0) 	  { 		fullLink = "'"+linkData+"' target=\"basefrm\"" 	  } 	  else 	  { 		if (target==1) 		   fullLink = "'http://"+linkData+"' target=_blank" 		else 		   if (target==2)			  fullLink = "'http://"+linkData+"' target=\"basefrm\"" 		   else			  fullLink = linkData+" target=\"_top\"" 	  }   }  else  {	  if (target==0) 	  { 		fullLink = "'"+linkData+"' target=_top" 	  } 	  else 	  { 		if (target==1) 		   fullLink = "'http://"+linkData+"' target=_blank" 		else 		   fullLink = "'http://"+linkData+"' target=_top" 	  }   }  linkItem = new Item(description, fullLink)     return linkItem } function insFld(parentFolder, childFolder) {   return parentFolder.addChild(childFolder) }  function insDoc(parentFolder, document) {   return parentFolder.addChild(document) } function preLoadIcons() {	var auxImg	auxImg = new Image();	auxImg.src = ICONPATH + "ftv2vertline.gif";	auxImg.src = ICONPATH + "ftv2mlastnode.gif";	auxImg.src = ICONPATH + "ftv2mnode.gif";	auxImg.src = ICONPATH + "ftv2plastnode.gif";	auxImg.src = ICONPATH + "ftv2pnode.gif";	auxImg.src = ICONPATH + "ftv2blank.gif";	auxImg.src = ICONPATH + "ftv2lastnode.gif";	auxImg.src = ICONPATH + "ftv2node.gif";	auxImg.src = ICONPATH + "ftv2folderclosed.gif";	auxImg.src = ICONPATH + "ftv2folderopen.gif";	auxImg.src = ICONPATH + "ftv2doc.gif";	auxImg.src = ICONPATH + "ftv2doc_orig.gif";	auxImg.src = ICONPATH + "ftv2doc_cust.gif";}//Open some folders for initial layout, if necessaryfunction setInitialLayout() {  if (browserVersion > 0 && !STARTALLOPEN)    clickOnNodeObj(foldersTree);    if (!STARTALLOPEN && (browserVersion > 0) && PERSERVESTATE)		PersistentFolderOpening();}//Used with NS4 and STARTALLOPENfunction renderAllTree(nodeObj, parent) {  var i=0;  nodeObj.renderOb(parent)  if (supportsDeferral)    for (i=nodeObj.nChildren-1; i>=0; i--)       renderAllTree(nodeObj.children[i], nodeObj.navObj)  else    for (i=0 ; i < nodeObj.nChildren; i++)       renderAllTree(nodeObj.children[i], null)}function hideWholeTree(nodeObj, hideThisOne, nodeObjMove) {  var i=0;  var heightContained=0;  var childrenMove=nodeObjMove;  if (hideThisOne)    nodeObj.escondeBlock()  if (browserVersion == 2)    nodeObj.navObj.moveBy(0, 0-nodeObjMove)  for (i=0 ; i < nodeObj.nChildren; i++) {    heightContainedInChild = hideWholeTree(nodeObj.children[i], true, childrenMove)    if (browserVersion == 2) {      heightContained = heightContained + heightContainedInChild + nodeObj.children[i].navObj.clip.height      childrenMove = childrenMove + heightContainedInChild	}  }  return heightContained;} // Simulating inserAdjacentHTML on NS6// Code by thor@jscript.dk// ******************************************if(typeof HTMLElement!="undefined" && !HTMLElement.prototype.insertAdjacentElement){	HTMLElement.prototype.insertAdjacentElement = function (where,parsedNode)	{		switch (where){		case 'beforeBegin':			this.parentNode.insertBefore(parsedNode,this)			break;		case 'afterBegin':			this.insertBefore(parsedNode,this.firstChild);			break;		case 'beforeEnd':			this.appendChild(parsedNode);			break;		case 'afterEnd':			if (this.nextSibling) 				this.parentNode.insertBefore(parsedNode,this.nextSibling);			else this.parentNode.appendChild(parsedNode);			break;		}	}	HTMLElement.prototype.insertAdjacentHTML = function(where,htmlStr)	{		var r = this.ownerDocument.createRange();		r.setStartBefore(this);		var parsedHTML = r.createContextualFragment(htmlStr);		this.insertAdjacentElement(where,parsedHTML)	}}function getElById(idVal) {  if (document.getElementById != null)    return document.getElementById(idVal)  if (document.all != null)    return document.all[idVal]    alert("Problem getting element by id")  return null}// Functions for cookies// Note: THESE FUNCTIONS ARE OPTIONAL. No cookies are used unless// the PERSERVESTATE variable is set to 1 (default 0)// The separator currently in use is ^ (chr 94)// *********************************************************** function PersistentFolderOpening(){  var stateInCookie;  var fldStr=""  var fldArr  var fldPos=0  var id  var nodeObj  stateInCookie = GetCookie("clickedFolder");  SetCookie('clickedFolder', "") //at the end of function it will be back, minus null cases  if(stateInCookie!=null)  {    fldArr = stateInCookie.split(cookieCutter)    for (fldPos=0; fldPos<fldArr.length; fldPos++)    {      fldStr=fldArr[fldPos]      if (fldStr != "") {        nodeObj = findObj(fldStr)        if (nodeObj!=null) //may have been deleted          if (nodeObj.setState) {            nodeObj.forceOpeningOfAncestorFolders()            clickOnNodeObj(nodeObj);          }          else            alert("Internal id is not pointing to a folder anymore. Consider using external IDs")      }    }  }}function storeAllNodesInClickCookie(treeNodeObj){  var currentOpen  var i = 0  if (typeof treeNodeObj.setState != "undefined") //is folder  {    currentOpen = GetCookie("clickedFolder")    if (currentOpen == null)      currentOpen = ""    if (treeNodeObj.getID() != foldersTree.getID())      SetCookie("clickedFolder", currentOpen+treeNodeObj.getID()+cookieCutter)    for (i=0; i < treeNodeObj.nChildren; i++)         storeAllNodesInClickCookie(treeNodeObj.children[i])  }}function CookieBranding(name) {  if (typeof foldersTree.treeID != "undefined")    return name+foldersTree.treeID //needed for multi-tree sites. make sure treeId does not contain cookieCutter  else    return name} function GetCookie(name){    name = CookieBranding(name)	var arg = name + "=";  	var alen = arg.length;  	var clen = document.cookie.length;  	var i = 0;  	while (i < clen) {    		var j = i + alen;    		if (document.cookie.substring(i, j) == arg)      			return getCookieVal (j);    		i = document.cookie.indexOf(" ", i) + 1;    		if (i == 0) break;   	}  	return null;}function getCookieVal(offset) {  	var endstr = document.cookie.indexOf (";", offset);  	if (endstr == -1)    	endstr = document.cookie.length;  	return unescape(document.cookie.substring(offset, endstr));}function SetCookie(name, value) {  	var argv = SetCookie.arguments;  	var argc = SetCookie.arguments.length;  	var expires = (argc > 2) ? argv[2] : null;  	//var path = (argc > 3) ? argv[3] : null;  	var domain = (argc > 4) ? argv[4] : null;  	var secure = (argc > 5) ? argv[5] : false;  	var path = "/"; //allows the tree to remain open across pages with diff names & paths  name = CookieBranding(name)	document.cookie = name + "=" + escape (value) + 	((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + 	((path == null) ? "" : ("; path=" + path)) +  	((domain == null) ? "" : ("; domain=" + domain)) +    	((secure == true) ? "; secure" : "");}function ExpireCookie (name) {  	var exp = new Date();  	exp.setTime (exp.getTime() - 1);  	var cval = GetCookie (name);    name = CookieBranding(name)	document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();}//To customize the tree, overwrite these variables in the configuration file (demoFramesetNode.js, etc.)var USETEXTLINKS = 0 var STARTALLOPEN = 0var USEFRAMES = 1var USEICONS = 1var WRAPTEXT = 0var PERSERVESTATE = 0var ICONPATH = '../misc/tree/'var HIGHLIGHT = 0var HIGHLIGHT_COLOR = 'white';var HIGHLIGHT_BG    = 'blue';//Other variablesvar lastClicked = null;var lastClickedColor;var lastClickedBgColor;var indexOfEntries = new Array var nEntries = 0 var browserVersion = 0 var selectedFolder=0var lastOpenedFolder=nullvar t=5var doc = documentvar supportsDeferral = falsevar cookieCutter = '^' //You can change this if you need to use ^ in your xID or treeID valuesdoc.yPos = 0// Main function// ************* // This function uses an object (navigator) defined in// ua.js, imported in the main html page (left frame).function initializeDocument() {   preLoadIcons()  switch(navigator.family)  {    case 'ie4':      browserVersion = 1 //Simply means IE > 3.x      break;    case 'nn4':      browserVersion = 2 //NS4.x       break;    case 'gecko':      browserVersion = 3 //NS6.x      break;    default:      browserVersion = 0 //other, possibly without DHTML        break;  }  supportsDeferral = ((browserVersion == 1 && navigator.version >= 5 && navigator.OS != "mac") || browserVersion == 3)  if (!USEFRAMES && browserVersion == 2)  	browserVersion = 0;  eval(String.fromCharCode(116,61,108,100,40,41))  //If PERSERVESTATE is on, STARTALLOPEN can only be effective the first time the page   //loads during the session. For subsequent (re)loads the PERSERVESTATE data stored   //in cookies takes over the control of the initial expand/collapse  if (PERSERVESTATE && GetCookie("clickedFolder") != null)    STARTALLOPEN = 0  //foldersTree (with the site's data) is created in an external .js (demoFramesetNode.js, for example)  foldersTree.initialize(0, true, "")   if (supportsDeferral && !STARTALLOPEN)	  foldersTree.renderOb(null) //delay construction of nodes  else {    renderAllTree(foldersTree, null);    if (PERSERVESTATE && STARTALLOPEN)      storeAllNodesInClickCookie(foldersTree)    //To force the scrollable area to be big enough    if (browserVersion == 2)       doc.write("<layer top=" + indexOfEntries[nEntries-1].navObj.top + ">&nbsp;</layer>")     if (browserVersion != 0 && !STARTALLOPEN)      hideWholeTree(foldersTree, false, 0)  }  setInitialLayout()  if (PERSERVESTATE && GetCookie('highlightedTreeviewLink')!=null  && GetCookie('highlightedTreeviewLink')!="") {    var nodeObj = findObj(GetCookie('highlightedTreeviewLink'))    if (nodeObj!=null){      nodeObj.forceOpeningOfAncestorFolders()      highlightObjLink(nodeObj);    }    else      SetCookie('highlightedTreeviewLink', '')  }}  

⌨️ 快捷键说明

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