var lastScript; var h=document.getElementsByTagName("head")[0]; function loadScript(url){ var f=document.createElement("script"); var d=new Date().getTime(); f.type="text/javascript"; f.id=d; f.src=url+'&'+d; h.appendChild(f); if(lastScript&&g(lastScript))g(lastScript).parentNode.removeChild(g(lastScript)); lastScript=d; } //创建一个DIV,ID为IdN function greatDiv(IdN) { var str = document.createElement("div"); str.id = IdN; with(str.style){ position = "absolute"; left = "0px"; top = "0px"; width = "200px"; height = "200px"; zIndex = "1"; visibility= "hidden"; } document.body.appendChild(str); document.getElementById(IdN).attachEvent("onmouseover",changeVisDiv); document.getElementById(IdN).attachEvent("onmouseout",hiddenDiv); } function loadDiv(url,obj){ var f=document.createElement("script"); var d=new Date().getTime(); event.cancelBubble = true; event.returnValue = false; f.type="text/javascript"; f.id=d; f.src=url+'&bb='+d; h.appendChild(f); //该坐标需要优化 div123456.style.top = document.body.scrollTop+event.clientY + 5 ; div123456.style.left = document.body.scrollLeft+event.clientX + 5 ; visDiv = true; DivVisible(); if(lastScript&&g(lastScript))g(lastScript).parentNode.removeChild(g(lastScript)); lastScript=d; } var i = 0; var visDiv= true; function hiddenDiv(obj){ if(obj.style=="[object]"){ obj.style.color=""; } visDiv = true; setTimeout(DivHidden,1000); } //改变是否显示层的状态 function changeVisDiv(){ visDiv = false; return; } //将层隐藏 function DivHidden(){ if (visDiv){ if (div123456.style.visibility=='visible'){ div123456.style.visibility='hidden'; visDiv = false; } } } //将层显示 function DivVisible(){ if (visDiv){ if (div123456.style.visibility=='hidden'){ div123456.style.visibility='visible'; visDiv = false; } } } function g(x){return document.getElementById(x)}; var KeyWords = []; onload=function(){ greatDiv("div123456"); //建立一个展现层 var keyword=new keywords(); keyword.body=document.body; // 要高亮显示关键词的 HTML 元素 keyword.flag=''; // 传递要匹配的关键词, 使用正则匹配. keyword.func=iLink; // 自定义链接函数, 可选, 参数为 yourfunc(sMatch, sBgCor, sFgCor); keyword.go(); // 执行本程序 keyword=null; } function iLink(sMatch, sBgCor, sFgCor){ for(var i = 0; i < KeyWords.length; i++){ if (KeyWords[i]==sMatch){ return '' + sMatch+''; } } return sMatch; } function keywords(){ // shawl.qiu code this.body=document.body; this.flag=''; this.func=''; this.iFlag1='@@'; this.iFlag2='##'; this.go=function(){ fGetWord(tl.body); }; var tl=this; var tlTemp=''; var strKeyW=''; var intCount=0; function fGetWord(oEle){ for(var i=0, j=oEle.childNodes.length; i0) { return mainStr.substring(0,lngLen) } else{ return null } } function right(mainStr,lngLen) { if (mainStr.length-lngLen>=0 && mainStr.length>=0 && mainStr.length-lngLen<=mainStr.length) { return mainStr.substring(mainStr.length-lngLen,mainStr.length) } else{ return null } } function fReturnStr(oNode, sMatch, sBgCor, sFgCor){ if((tl.func==''||oNode.parentNode.nodeName=='A'||oNode.parentNode.innerText.length<40)||(strKeyW.indexOf(sMatch)!=-1)||intCount>=2){ return sMatch; } else { strKeyW = strKeyW + '|' + sMatch; intCount = intCount + 1; //********************************* var strKeyWord=tl.flag; strKeyWord ='|'+strKeyWord+'|'; strKeyWord=strKeyWord.replace('|'+sMatch+'|','|'); strKeyWord=strKeyWord.replace('||','|'); if (left(strKeyWord,1)=='|'){ strKeyWord=right(strKeyWord,(strKeyWord.length-1)); } if (right(strKeyWord,1)=='|'){ tl.flag=left(strKeyWord,(strKeyWord.length-1)); }else{ tl.flag=strKeyWord; } //********************************* return tl.func(sMatch, sBgCor, sFgCor); } } // end function fReturnStr(oNode, sMatch, sBgCor, sFgCor) // function fRndCor(under, over){ // if(arguments.length==1){ // var over=under; // under=0; // }else if(arguments.length==0){ // var under=0; // var over=255; // } // var r=fRandomBy(under, over).toString(16); // r=fStrPadStr(r, r, 2); // var g=fRandomBy(under, over).toString(16); // g=fStrPadStr(g, g, 2); // var b=fRandomBy(under, over).toString(16); // b=fStrPadStr(b, b, 2); // //defaultStatus=r+' '+g+' '+b // return '#'+(r+g+b).toUpperCase()+';'; // } // shawl.qiu code function fRandomBy(under, over){ switch(arguments.length){ case 1: return parseInt(Math.random()*under+1); case 2: return parseInt(Math.random()*(over-under+1) + under); default: return 0; } } // shawl.qiu code function fStrPadStr(sSrc, sPad, nLen){ if(!sSrc)return false; if(!sPad)sPad='0'; if(!nLen)nLen=2; sSrc+=''; if(sSrc.length>=nLen)return sSrc; sPad=new Array(nLen+1).join(sPad); var re=new RegExp('.*(.{'+(nLen)+'})$'); return (sPad+sSrc).replace(re,'$1'); } }