Eassay_JS
//SCRIPT_START
//Change Left Menu (Eassay)
function ChangeEssayStyle()
{
var oLeftMenu = document.getElementById("leftmenu");
var arrLi =oLeftMenu.getElementsByTagName('li');
arrLi = arrLi[0].parentNode.getElementsByTagName('li');
for(var i=0;i<arrLi.length;i++)
if(arrLi[i].className=='listitem')
{
arrLi[i].removeChild(arrLi[i].getElementsByTagName('a')[1]);
var href = arrLi[i].getElementsByTagName('a')[0].href;
var reg1 = /<a(.*)<//a>/ig;
var strTmp = arrLi[i].innerHTML;
strTmp = strTmp.replace(reg1,'<span style="cursor:pointer;color:blue;" status="out" onmouseover="mhovItem(this)" onmouseout="motItem(this)" onclick="mclItem(this)"$1 <//span>');
arrLi[i].innerHTML = strTmp; arrLi[i].getElementsByTagName('span')[0].href = href;
}
}
function mhovItem( oItem )
{
SysTool.addProperty(oItem.style,["border@1px solid rgb(128,128,128)","backgroundColor@rgb(192,192,192)"]);
oItem.status = oItem.status=="clicked"?"clicked":"over";
}
function motItem( oItem )
{
if( oItem.status=="clicked" )
return;
oItem.status = "out";
SysTool.addProperty(oItem.style,["border@","backgroundColor@Transparent"]);
}
function mclItem( oItem )
{
var oListItem = oItem.parentNode;
if( oItem.status=="clicked" )
{
oItem.status="over"; mhovItem(oItem);
for( var i=1; i<oListItem.childNodes.length;)
oListItem.removeChild(oListItem.childNodes[1]);
return;
}
oItem.status="clicked";
SysTool.addProperty(oItem.style,["backgroundColor@white","border@1px solid gray"]);
var tmpDiv = document.createElement('div');
SysTool.addProperty(tmpDiv.style,["backgroundColor@transparent","fontSize@8pt"]);
SysTool.addProperty(tmpDiv,["name@AddItems","innerHTML@Loading..."]);
oListItem.appendChild(tmpDiv);
LoadSubItem(oItem);
}
function LoadSubItem(oItem)
{
var oListItem = oItem.parentNode;
var xmlhttp = new _xmlhttp(oItem.href,true);
xmlhttp.OnStatus200 = LoadSubItem_CallBack( oListItem);
xmlhttp.openRef("GET",true,null,null);
xmlhttp.sendRef();
}
function LoadSubItem_CallBack( oListItem )
{
return function()
{
for( var i=1; i<oListItem.childNodes.length; )//Remove "Loading..." or any other
oListItem.removeChild(oListItem.childNodes[1]);
var strContent = this.getResponseText();
var rePostTitle = /<div class="postTitle"[/w|/W]*?//div>/g ;
var arrPostTitle = new Array();
while( arrPostTitle = rePostTitle.exec(strContent) )
{
var strPassageInfo = arrPostTitle[0];
// Get PassageInfo;
var reArticleTitle = /">.*?</i;//PassageTitle;
var reArticleHref = /href=/".*/"/i;//Passage href
var arrArticleTitle = reArticleTitle.exec(strPassageInfo);
var strArticleTitle = arrArticleTitle[0].slice(2,-1);
var arrArticleHref = reArticleHref.exec(strPassageInfo);
var strHref = arrArticleHref[0].slice(6,-1);
var oSubItem = document.createElement("div");
oSubItem.name = 'AddItems';
oListItem.appendChild(oSubItem);
oSubItem.innerHTML=" -";
var oChild = document.createElement("span");
SysTool.addProperty(oChild.style,["fontSize@8pt","cursor@pointer","backgroundColor@transparent"]);
SysTool.addProperty(oChild,["href@"+strHref,"oriText@"+strArticleTitle,"bShowTip@false",
"innerHTML@"+AdjustStringAccordingParent(strArticleTitle,oChild,oSubItem)]);
oSubItem.appendChild(oChild);
oChild.onmousemove = function(){mhovSubItem(this,arguments[0]);};
oChild.onmouseout = function(){ motSubItem(this);};
oChild.onclick = function(){mclSubItem(this);};
}
}//return function end
}
function mhovSubItem(oItem,evt)
{
var event = this.event?this.event:evt;
if( oItem.bShowTip!="true")
{
SysTool.addProperty(oItem.style,["backgroundColor@rgb(157,254,129)","border@1px solid rgb(0,255,128)"]);
var nLeft = event.clientX + 6;
var nTop = oItem.offsetTop+oItem.offsetHeight+2;
var myTT = new _toolTip("tooltip",2,oItem.parentNode);
myTT.SetStyle(["border@1px solid rgb(241,239,226)",
"borderBottom@1px solid rgb(113,111,100)",
"borderRight@1px solid rgb(113,111,100)",
"backgroundColor@white"],0);
myTT.SetStyle(["border@2px solid rgb(223,223,223)",
"color@rgb(53,53,53)",
"fontFamily@monospace",
"fontWeight@bold"],1);
myTT.SetContent("<nobr>"+oItem.oriText+"<//nobr>");
myTT.ShowToolTip(true,nLeft,nTop);
oItem.oToolTip = myTT;
oItem.bShowTip = "true";
}
}
function motSubItem( oItem )
{
oItem.style.background="transparent";
oItem.style.border="none";
oItem.oToolTip.ShowToolTip(false);
oItem.bShowTip = "false";
}
function mclSubItem( oItem )
{
ShowPageStatus("Loading:"+oItem.oriText);
var xmlhttp = new _xmlhttp(oItem.href,true);
xmlhttp.OnStatus200 = mclSubItem_CallBack(oItem);
xmlhttp.openRef("GET",true,null,null);
xmlhttp.setRequestHeader("Content-Type","text/xml");
xmlhttp.sendRef();
}
function mclSubItem_CallBack( oItem )
{
return function()
{
var strChaos = this.getResponseText();
var oProcessArticle = new processArticle( strChaos,oItem.href );
oProcessArticle.ShowArticle();
oProcessArticle.ShowComment(document.getElementById('main'));
oProcessArticle.ShowCommentForm(document.getElementById('main'));
if( document.getElementById('commentRadio') == null )
{
var ndRds = document.createElement('div');
ndRds.id = 'commentRadio';
ndRds.style.align='right';
ndRds .innerHTML = "时间顺序<input type=radio name=cmtRd value=0 checked=true><br/>时间逆序<input type=radio name=cmtRd value=1/>";
ndRds.actionRadio = 0;
ndRds.onclick = mclCommentRadio(oProcessArticle);
document.getElementById('main').insertBefore(ndRds,oProcessArticle.GetCommentNode());
}
}
}
function mclCommentRadio( oProcessArticle )
{
return function()
{
var arrRds = new Array();
for( var i=0; i<this.childNodes.length;i++ )
if( this.childNodes[i].name=="cmtRd" )
arrRds.push(this.childNodes[i]);
if(arrRds.length!=2)
alert('Runtime Error: get Comment Radio error.');
if( arrRds[this.actionRadio].checked )
return;
this.actionRadio = this.actionRadio==0?1:0;
oProcessArticle.ShowComment(document.getElementById('main'),this.actionRadio);
}
}
function AdjustStringAccordingParent( strData , oTmpObj , oParentObj)
{
oTmpObj.innerHTML= strData.substr(0,1);
oParentObj.appendChild(oTmpObj);
var nPerHeight = oTmpObj.offsetHeight + 3;//
oTmpObj.innerHTML= strData;
if( oTmpObj.offsetHeight<=nPerHeight )
return strData;//Only one line, return original string.
var strTmp = strData;
while( oTmpObj.offsetHeight > nPerHeight )
{
strTmp = strTmp.substr(0,strTmp.length-2);
oTmpObj.innerHTML= strTmp+"...";
}
var strReturn = oTmpObj.innerHTML;
oParentObj.removeChild(oTmpObj);
return strReturn;
}
function ChangeGallaryBlock()
{
var ndLeftItem = document.getElementById('leftmenu');
var reTmp = /相册/ig;
for( var i=0; i<ndLeftItem.childNodes.length; i++ )
{
if( reTmp.exec(ndLeftItem.childNodes[i].innerHTML) )
break;
}
var ndGallaryContainer = ndLeftItem.childNodes[i];
var ndGallaryPath = ndGallaryContainer.getElementsByTagName('a')[0];
var strGallaryPagePath = ndGallaryPath.href;
var xmlhttp = new _xmlhttp(strGallaryPagePath,true);
xmlhttp.OnStatus200 = GetGallaryPage(ndGallaryContainer );
xmlhttp.openRef("GET",true,null,null);
xmlhttp.sendRef();
}
function GetGallaryPage( ndGallaryContainer )
{
return function()
{
var strResText = this.getResponseText();
var reThumb = /class=/"ThumbNail/".*?src=/"(.*?)/"/ig;
var arrThumb = new Array();
var arrImgPath = new Array();
while( arrThumb = reThumb.exec(strResText) )
{
arrImgPath.push(RegExp.$1);
}
var oGallary = new _gallary( arrImgPath);
var ndGallary = oGallary.GetGallaryNode();
var ndCenter = document.createElement('center');
ndCenter.appendChild(ndGallary);
for( var i=0 ; i<ndGallaryContainer.childNodes.length; i++ )
{
if( ndGallaryContainer.childNodes[i].className!='listtitle' )
{
ndGallaryContainer.removeChild( ndGallaryContainer.childNodes[i] );
i--;
}
}
ndGallaryContainer.appendChild(ndCenter);
}
}
//SCRIPT_END
//Change Left Menu (Eassay)
function ChangeEssayStyle()
{
var oLeftMenu = document.getElementById("leftmenu");
var arrLi =oLeftMenu.getElementsByTagName('li');
arrLi = arrLi[0].parentNode.getElementsByTagName('li');
for(var i=0;i<arrLi.length;i++)
if(arrLi[i].className=='listitem')
{
arrLi[i].removeChild(arrLi[i].getElementsByTagName('a')[1]);
var href = arrLi[i].getElementsByTagName('a')[0].href;
var reg1 = /<a(.*)<//a>/ig;
var strTmp = arrLi[i].innerHTML;
strTmp = strTmp.replace(reg1,'<span style="cursor:pointer;color:blue;" status="out" onmouseover="mhovItem(this)" onmouseout="motItem(this)" onclick="mclItem(this)"$1 <//span>');
arrLi[i].innerHTML = strTmp; arrLi[i].getElementsByTagName('span')[0].href = href;
}
}
function mhovItem( oItem )
{
SysTool.addProperty(oItem.style,["border@1px solid rgb(128,128,128)","backgroundColor@rgb(192,192,192)"]);
oItem.status = oItem.status=="clicked"?"clicked":"over";
}
function motItem( oItem )
{
if( oItem.status=="clicked" )
return;
oItem.status = "out";
SysTool.addProperty(oItem.style,["border@","backgroundColor@Transparent"]);
}
function mclItem( oItem )
{
var oListItem = oItem.parentNode;
if( oItem.status=="clicked" )
{
oItem.status="over"; mhovItem(oItem);
for( var i=1; i<oListItem.childNodes.length;)
oListItem.removeChild(oListItem.childNodes[1]);
return;
}
oItem.status="clicked";
SysTool.addProperty(oItem.style,["backgroundColor@white","border@1px solid gray"]);
var tmpDiv = document.createElement('div');
SysTool.addProperty(tmpDiv.style,["backgroundColor@transparent","fontSize@8pt"]);
SysTool.addProperty(tmpDiv,["name@AddItems","innerHTML@Loading..."]);
oListItem.appendChild(tmpDiv);
LoadSubItem(oItem);
}
function LoadSubItem(oItem)
{
var oListItem = oItem.parentNode;
var xmlhttp = new _xmlhttp(oItem.href,true);
xmlhttp.OnStatus200 = LoadSubItem_CallBack( oListItem);
xmlhttp.openRef("GET",true,null,null);
xmlhttp.sendRef();
}
function LoadSubItem_CallBack( oListItem )
{
return function()
{
for( var i=1; i<oListItem.childNodes.length; )//Remove "Loading..." or any other
oListItem.removeChild(oListItem.childNodes[1]);
var strContent = this.getResponseText();
var rePostTitle = /<div class="postTitle"[/w|/W]*?//div>/g ;
var arrPostTitle = new Array();
while( arrPostTitle = rePostTitle.exec(strContent) )
{
var strPassageInfo = arrPostTitle[0];
// Get PassageInfo;
var reArticleTitle = /">.*?</i;//PassageTitle;
var reArticleHref = /href=/".*/"/i;//Passage href
var arrArticleTitle = reArticleTitle.exec(strPassageInfo);
var strArticleTitle = arrArticleTitle[0].slice(2,-1);
var arrArticleHref = reArticleHref.exec(strPassageInfo);
var strHref = arrArticleHref[0].slice(6,-1);
var oSubItem = document.createElement("div");
oSubItem.name = 'AddItems';
oListItem.appendChild(oSubItem);
oSubItem.innerHTML=" -";
var oChild = document.createElement("span");
SysTool.addProperty(oChild.style,["fontSize@8pt","cursor@pointer","backgroundColor@transparent"]);
SysTool.addProperty(oChild,["href@"+strHref,"oriText@"+strArticleTitle,"bShowTip@false",
"innerHTML@"+AdjustStringAccordingParent(strArticleTitle,oChild,oSubItem)]);
oSubItem.appendChild(oChild);
oChild.onmousemove = function(){mhovSubItem(this,arguments[0]);};
oChild.onmouseout = function(){ motSubItem(this);};
oChild.onclick = function(){mclSubItem(this);};
}
}//return function end
}
function mhovSubItem(oItem,evt)
{
var event = this.event?this.event:evt;
if( oItem.bShowTip!="true")
{
SysTool.addProperty(oItem.style,["backgroundColor@rgb(157,254,129)","border@1px solid rgb(0,255,128)"]);
var nLeft = event.clientX + 6;
var nTop = oItem.offsetTop+oItem.offsetHeight+2;
var myTT = new _toolTip("tooltip",2,oItem.parentNode);
myTT.SetStyle(["border@1px solid rgb(241,239,226)",
"borderBottom@1px solid rgb(113,111,100)",
"borderRight@1px solid rgb(113,111,100)",
"backgroundColor@white"],0);
myTT.SetStyle(["border@2px solid rgb(223,223,223)",
"color@rgb(53,53,53)",
"fontFamily@monospace",
"fontWeight@bold"],1);
myTT.SetContent("<nobr>"+oItem.oriText+"<//nobr>");
myTT.ShowToolTip(true,nLeft,nTop);
oItem.oToolTip = myTT;
oItem.bShowTip = "true";
}
}
function motSubItem( oItem )
{
oItem.style.background="transparent";
oItem.style.border="none";
oItem.oToolTip.ShowToolTip(false);
oItem.bShowTip = "false";
}
function mclSubItem( oItem )
{
ShowPageStatus("Loading:"+oItem.oriText);
var xmlhttp = new _xmlhttp(oItem.href,true);
xmlhttp.OnStatus200 = mclSubItem_CallBack(oItem);
xmlhttp.openRef("GET",true,null,null);
xmlhttp.setRequestHeader("Content-Type","text/xml");
xmlhttp.sendRef();
}
function mclSubItem_CallBack( oItem )
{
return function()
{
var strChaos = this.getResponseText();
var oProcessArticle = new processArticle( strChaos,oItem.href );
oProcessArticle.ShowArticle();
oProcessArticle.ShowComment(document.getElementById('main'));
oProcessArticle.ShowCommentForm(document.getElementById('main'));
if( document.getElementById('commentRadio') == null )
{
var ndRds = document.createElement('div');
ndRds.id = 'commentRadio';
ndRds.style.align='right';
ndRds .innerHTML = "时间顺序<input type=radio name=cmtRd value=0 checked=true><br/>时间逆序<input type=radio name=cmtRd value=1/>";
ndRds.actionRadio = 0;
ndRds.onclick = mclCommentRadio(oProcessArticle);
document.getElementById('main').insertBefore(ndRds,oProcessArticle.GetCommentNode());
}
}
}
function mclCommentRadio( oProcessArticle )
{
return function()
{
var arrRds = new Array();
for( var i=0; i<this.childNodes.length;i++ )
if( this.childNodes[i].name=="cmtRd" )
arrRds.push(this.childNodes[i]);
if(arrRds.length!=2)
alert('Runtime Error: get Comment Radio error.');
if( arrRds[this.actionRadio].checked )
return;
this.actionRadio = this.actionRadio==0?1:0;
oProcessArticle.ShowComment(document.getElementById('main'),this.actionRadio);
}
}
function AdjustStringAccordingParent( strData , oTmpObj , oParentObj)
{
oTmpObj.innerHTML= strData.substr(0,1);
oParentObj.appendChild(oTmpObj);
var nPerHeight = oTmpObj.offsetHeight + 3;//
oTmpObj.innerHTML= strData;
if( oTmpObj.offsetHeight<=nPerHeight )
return strData;//Only one line, return original string.
var strTmp = strData;
while( oTmpObj.offsetHeight > nPerHeight )
{
strTmp = strTmp.substr(0,strTmp.length-2);
oTmpObj.innerHTML= strTmp+"...";
}
var strReturn = oTmpObj.innerHTML;
oParentObj.removeChild(oTmpObj);
return strReturn;
}
function ChangeGallaryBlock()
{
var ndLeftItem = document.getElementById('leftmenu');
var reTmp = /相册/ig;
for( var i=0; i<ndLeftItem.childNodes.length; i++ )
{
if( reTmp.exec(ndLeftItem.childNodes[i].innerHTML) )
break;
}
var ndGallaryContainer = ndLeftItem.childNodes[i];
var ndGallaryPath = ndGallaryContainer.getElementsByTagName('a')[0];
var strGallaryPagePath = ndGallaryPath.href;
var xmlhttp = new _xmlhttp(strGallaryPagePath,true);
xmlhttp.OnStatus200 = GetGallaryPage(ndGallaryContainer );
xmlhttp.openRef("GET",true,null,null);
xmlhttp.sendRef();
}
function GetGallaryPage( ndGallaryContainer )
{
return function()
{
var strResText = this.getResponseText();
var reThumb = /class=/"ThumbNail/".*?src=/"(.*?)/"/ig;
var arrThumb = new Array();
var arrImgPath = new Array();
while( arrThumb = reThumb.exec(strResText) )
{
arrImgPath.push(RegExp.$1);
}
var oGallary = new _gallary( arrImgPath);
var ndGallary = oGallary.GetGallaryNode();
var ndCenter = document.createElement('center');
ndCenter.appendChild(ndGallary);
for( var i=0 ; i<ndGallaryContainer.childNodes.length; i++ )
{
if( ndGallaryContainer.childNodes[i].className!='listtitle' )
{
ndGallaryContainer.removeChild( ndGallaryContainer.childNodes[i] );
i--;
}
}
ndGallaryContainer.appendChild(ndCenter);
}
}
//SCRIPT_END
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏