📄 whhost.js
字号:
{ if(bDown) { if(compare(aKsOnly[i],sK)>0) { nIdx=i; break; } } else { if(compare(aKsOnly[i],sK)<0) nIdx=i; else break; } } } } return nIdx;}function writeItems(oHTML,aDataCon,aPos,aMinPos,aMaxPos,bDown,nLevel){ var aOldPos=new Array(); for(var i=0;i<aPos.length;i++) { aOldPos[i]=aPos[i]; } var p; do{ var sCurrentK=""; var aCurIdxSet=new Array(); p=0; for(i=0;i<aDataCon.length;i++) { if(aDataCon[i].aKs&&aDataCon[i].aKs.length&&aPos[i]!=-1&& (bDown&&aPos[i]<aMaxPos[i])||(!bDown&&aPos[i]>aMinPos[i])) { if(sCurrentK==""|| (bDown&&compare(sCurrentK,aDataCon[i].aKs[aPos[i]].sName)>0)|| (!bDown&&compare(sCurrentK,aDataCon[i].aKs[aPos[i]].sName)<0)) { sCurrentK=aDataCon[i].aKs[aPos[i]].sName; p=0; aCurIdxSet[p++]=i; } else if(compare(sCurrentK,aDataCon[i].aKs[aPos[i]].sName)==0){ aCurIdxSet[p++]=i; } } else if(nLevel==1&&aMaxPos[i]!=aMinPos[i]){ if(bDown&&aPos[i]==aMaxPos[i]) { if(aDataCon[i].aKs) { gsSKA=aDataCon[i].aKs[aOldPos[i]].sName; return false; } } else if(!bDown&&aPos[i]==aMinPos[i]) { if(aDataCon[i].aKs) { gsSKB=aDataCon[i].aKs[aOldPos[i]].sName; return false; } } } } if(p>=1){ for(var s=0;s<p;s++) { aOldPos[aCurIdxSet[s]]=aPos[aCurIdxSet[s]]; } mergeItems(oHTML,bDown,aDataCon,aCurIdxSet,p,aPos,nLevel); adjustPosition(bDown,aDataCon,aCurIdxSet,p,aPos); if(nLevel==1&&oHTML.nNeeded<=oHTML.nCurrent){ return true; } } }while(p>0); return true;}function updateUsedK(aDataCon,aOriPos,aOldPos,bDown){ for(var i=0;i<aDataCon.length;i++) { if (aOldPos[i]!=aOriPos[i]) { var nBP=0; var nEP=0; if(bDown) { nBP=aOriPos[i]; nEP=aOldPos[i]-1; } else { if (aOldPos[i]!=-1) nBP=aOldPos[i]+aDataCon[i].aKs[aOldPos[i]].nNKOff+1; else nBP=0; nEP=aOriPos[i]+aDataCon[i].aKs[aOriPos[i]].nNKOff; } if(nBP<=nEP) { setContentsUsed(aDataCon[i],nBP,nEP); var oFirstPair=aDataCon[i].oUsedItems; if(oFirstPair.oN==null&&oFirstPair.nB==0&&oFirstPair.nE==aDataCon[i].nNum-1) { storeKeysOnly(aDataCon[i]); aDataCon[i].oUsedItems=aDataCon[i].aKs=aDataCon[i].sFileName=null; } } } }}function storeKeysOnly(oCData){ oCData.aKsOnly=new Array(); for(var i=0;i<oCData.aKs.length;i++) { oCData.aKsOnly[i]=oCData.aKs[i].sName; i+=oCData.aKs[i].nNKOff; }}function setContentsUsed(oIdx,nB,nE){ if(!oIdx.oUsedItems) oIdx.oUsedItems=new usedItems(nB,nE); else { var oUsedItems=oIdx.oUsedItems; var oPNode=null; do{ if(oUsedItems.nB>nB) { if(oUsedItems.nB==nE+1) { oUsedItems.nB=nB; } else{ var oNewNode=new usedItems(oUsedItems.nB,oUsedItems.nE); oNewNode.oN=oUsedItems.oN; oUsedItems.nB=nB; oUsedItems.nE=nE; oUsedItems.oN=oNewNode; } break; } oPNode=oUsedItems; oUsedItems=oUsedItems.oN; }while(oUsedItems); if(!oUsedItems) { if(oPNode!=null) oPNode.oN=new usedItems(nB,nE); } if(oPNode!=null){ if(oPNode.nE==oPNode.oN.nB-1) { oPNode.nE=oPNode.oN.nE; oPNode.oN=oPNode.oN.oN; } } }}function projInfo(sPPath,sDPath,sFile){ this.sPPath=sPPath; this.sDPath=sDPath; this.sFile=sFile;}function addProjInfo(sPPath,sDPath,sFile){ var oIdxInfo=new projInfo(sPPath,sDPath,sFile); gaData[gaData.length]=oIdxInfo; return oIdxInfo;}function writeDataIFrame(){ if(gnLoad<gaData.length) { gbLoadInfo=true; loadData2(gaData[gnLoad].sPPath+gaData[gnLoad].sDPath+gaData[gnLoad].sFile); } else{ if(gnItems!=0) { markBegin(); writeFakeItems(); gsSKA=""; gnNeeded=gnVisible; gnIns=0; checkReady(); } }}function getH6ById(nPos){ if(document.all) return document.all("fk"+nPos); else if(document.getElementsByName) return document.getElementsByName("fk"+nPos); return null; }function showItemsInEvaluation(nBP){ var bRtn=true; var fPer=nBP/gnItems; var nB=Math.floor(fPer*gnMaxItems); var oCData=getChunkByIdx(gnRef,nB); if(oCData) { if(!oCData.aKs&&oCData.sFileName!=null) { gnNKI=nB; goCData=oCData; oCData.nProjId=gnRef; gbLoadInfo=false; beginLoading(); loadData2(gaData[gnRef].sPPath+gaData[gnRef].sDPath+oCData.sFileName); } else{ gsSKA=getKByIdx(oCData,nB); if(gsSKA) { gsSKB=null; gbNeedCalc=true; gbScrl=true; checkReady() } else { markEnd(); bRtn=false; } } } else { markEnd(); bRtn=false; } return bRtn;}function isUsed(oCData,nPos){ var oUsed=oCData.oUsedItems; while(oUsed&&oUsed.nB<=nPos) { if(oUsed.nE>=nPos) return true; oUsed=oUsed.oN; } return false;}function getKByIdx(oCData,nB){ var nRelPos=nB-(oCData.nTotal-oCData.nNum); var aIKs=oCData.aKs; if(nRelPos>=0&&aIKs&&nRelPos<aIKs.length) { var oK=null; do{ oK=aIKs[nRelPos++]; } while((oK.nType==3||isUsed(oCData,nRelPos-1))&&nRelPos<aIKs.length); if(oK.nType!=3) { return oK.sName; } else{ nRelPos=nB-(oCData.nTotal-oCData.nNum)-1; if(nRelPos>=0) { do{ oK=aIKs[nRelPos--]; } while((oK.nType==3||isUsed(oCData,nRelPos+1))&&nRelPos>=0); } if(oK.nType!=3) { return oK.sName; } } } return null;}function loadData2(sFileName){ disEvt(); if(gbXML) loadDataXML(sFileName); else loadData(sFileName); enEvt();}function projReady(aChunk){ gaChunks[gnLoad++]=aChunk; var len=aChunk.length; var nTotal=0; if(len>0) nTotal=aChunk[len-1].nTotal; gnItems+=nTotal; if(nTotal>gnMaxItems) { gnMaxItems=nTotal; gnRef=gnLoad-1; } setTimeout("writeDataIFrame();",1);}function writeFakeItems(){ disEvt(); gnUHeight=15; var sHTML=getFakeItemsHTMLbyCount(0,gnItems); document.body.insertAdjacentHTML("beforeEnd",sHTML); var obj=getH6ById(0); if (document.body != null) { gnVisible=Math.ceil(document.body.clientHeight/gnUHeight); } gaFakes[0]=new fakeItemsArea(0,gnItems,"",getEndString(),obj); enEvt();}function getEndString(){ var sBC=getBiggestChar(); return sBC+sBC+sBC+sBC+sBC+sBC+sBC+sBC;}function getUnitIdx(nScrl,nHeight){ if(gaFakes.length==0) { markEnd(); return; } var nB=0; var nE=gaFakes.length-1; var nM=-1; var nTop=0; var nBtm=0; var bF=false; do{ nM=(nB+nE)>>1; nBtm=gaFakes[nM].getBtm(); nTop=gaFakes[nM].getTop(); if(nTop>=nScrl+nHeight) nE=nM-1; else if(nBtm<nScrl) nB=nM+1; else{ bF=true; break; } }while(nE>=nB); if(bF) { if(nTop>=nScrl){ gsSKA=gaFakes[nM].sKA; gsSKB=null; gnNeeded=Math.ceil((nHeight-nTop+nScrl)/gnUHeight); gnIns=gaFakes[nM].nB; checkReady(); } else if(nBtm<=nScrl+nHeight){ gsSKB=gaFakes[nM].sKB; gsSKA=null; gnNeeded=Math.ceil((nBtm-nScrl+gnScrlMgn)/gnUHeight); gbNeedCalc=true; checkReady(); } else{ gnNeeded=gnVisible; var nUnitIdx=gaFakes[nM].nB+Math.floor((nScrl-nTop)/gnUHeight); if (!showItemsInEvaluation(nUnitIdx)) { gsSKA=gaFakes[nM].sKA; gsSKB=null; gnNeeded=Math.ceil(nHeight/gnUHeight); gnIns=gaFakes[nM].nB; checkReady(); } } } else markEnd();}function disEvt(){ window.onscroll=null; window.onresize=null;}function enEvt(){ window.onscroll=window_OnScroll; window.onresize=window_OnResize;}function insertIdxKs(nIns,oHTML,bScrl){ var bRtn=true; disEvt(); var nCount=oHTML.nConsumed; var nB=0; var nE=gaFakes.length-1; var nM=-1; var bF=false; do{ nM=(nB+nE)>>1; if(gaFakes[nM].nB>nIns) nE=nM-1; else if(gaFakes[nM].nB+gaFakes[nM].nNum<=nIns) nB=nM+1; else{ bF=true; break; } }while(nE>=nB); if(bF) { var oFIA=gaFakes[nM]; var nOffsetTop=oFIA.getTop(); var nOffsetBottom=oFIA.getBtm(); var nDelta=0; var nHDiff=nIns-oFIA.nB; var nTDiff=oFIA.nNum+oFIA.nB-(nIns+nCount); if(nHDiff>0) { nDelta=oFIA.setNum(nHDiff); var sOldKBefore=oFIA.sKB; oFIA.sKB=oHTML.sFK; if(nTDiff>0) { var sHTML=getFakeItemsHTMLbyCount(nIns,nTDiff); oFIA.insertAdjacentHTML("afterEnd",sHTML); var obj=getH6ById(nIns); insertItemIntoArray(gaFakes,nM+1,new fakeItemsArea(nIns+nCount,nTDiff,oHTML.sLK,sOldKBefore,obj)); } oFIA.insertAdjacentHTML("afterEnd",oHTML.sHTML); if(bScrl) { if(gbMac&&gbIE4) { var nScrollPos=nOffsetBottom-nDelta; while(document.body.scrollTop!=nScrollPos) document.body.scrollTop=nScrollPos; } else window.scrollTo(0,nOffsetBottom-nDelta); } } else{ oFIA.insertAdjacentHTML("beforeBegin",oHTML.sHTML); if(bScrl){ if(gbMac&&gbIE4) { var nScrollPos=nOffsetTop; while(document.body.scrollTop!=nScrollPos) document.body.scrollTop=nScrollPos; } else window.scrollTo(0,nOffsetTop); } if(nTDiff>0) { oFIA.nB=nIns+nCount; nDelta=oFIA.setNum(nTDiff); oFIA.sKA=oHTML.sLK; } else{ gaFakes[nM].setNum(0); removeItemFromArray(gaFakes,nM); } } } else bRtn=false; enEvt(); return bRtn;}function window_OnScroll(){ gnSE++; setTimeout("procScroll();",50); }function procScroll(){ if(gnSE==1&&!gbProcess) { markBegin(); getUnitIdx(document.body.scrollTop,document.body.clientHeight); } gnSE--;}function window_OnResize(){ gnRE++; setTimeout("procResize();",50);}function procResize(){ if(gnRE==1&&!gbProcess) { markBegin(); gnVisible=Math.ceil(document.body.clientHeight/gnUHeight); if(gnIns==-1) getUnitIdx(document.body.scrollTop,document.body.clientHeight); } gnRE--;}function getChunkByIdx(nIdx,nPosition){ var oCData=null; if(nIdx<gaChunks.length) { var len=gaChunks[nIdx].length; if(len>0) { var nB=0; var nE=len-1; var bF=false; do{ var nM=(nB+nE)>>1; if(nPosition<gaChunks[nIdx][nM].nTotal) { bF=true; nE=nM; } else nB=nM+1; }while(nE>nB); if(bF) oCData=gaChunks[nIdx][nE]; else if(nPosition<gaChunks[nIdx][nB].nTotal) oCData=gaChunks[nIdx][nB]; } } return oCData;}function getChunkedData(nIdx,bDown,sK){ var oCData=null; var nCandId=-1; if(nIdx<gaChunks.length) { var len=gaChunks[nIdx].length; if(len>0) { var nB=0; var nE=len-1; var bF=false; do{ var nM=(nB+nE+(bDown?0:1))>>1; if(bDown) { if(compare(sK,gaChunks[nIdx][nM].sEK)<0) { bF=true; nE=nM; } else nB=nM+1; } else { if(compare(sK,gaChunks[nIdx][nM].sBK)>0) { bF=true; nB=nM; } else nE=nM-1; } }while(nE>nB); if(bF) { if(bDown) nCandId=nE; else nCandId=nB; } else { if(bDown) { if(gaChunks[nIdx].length>nB&&compare(sK,gaChunks[nIdx][nB].sEK)<0) nCandId=nB; else nCandId=gaChunks[nIdx].length-1; } else { if(0<=nE&&compare(sK,gaChunks[nIdx][nE].sBK)>0) nCandId=nE; else nCandId=0; } } return gaChunks[nIdx][nCandId]; } } return null;}function findCK(){ if(gsCK!=null) { gsSKA=gsCK; gbFindCK=true; gnNeeded=1; markBegin(); checkReady(); }}function writeLoadingDiv(nIIdx){ return "<div id=\""+gsLoadingDivID+"\" style=\"position:absolute;top:0;left:0;z-index:600;visibility:hidden;padding-left:4px;background-color:ivory;border-width:1;border-style:solid;border-color:black;width:150px;\">"+gsLoadingMsg+"</div>";}var gbWhHost=true;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -