📄 function.js
字号:
window.onerror = function Nopop(){
return true;
};
var site_name="read8_sitename";//网站名字
var site_url="read8_siteurl";//网站地址
var copy_right="Copyright (C) 2002-2005 "+site_name+" All Rights Reserved<br> 本作品系网友上传,仅代表作者本人的观点,与本站立场无关。<br>如有章节错误、排版不齐或版权疑问、作品内容有违相关法律等情况,请联系管理员。";//版权声明
var book_id;//文章ID
var book_title;//文章标题
var author_name;//作者名称
var volumn_set;//分卷设置,1为分卷,0为不分卷
var chapter_array;//章节标题数组
var volumn_array;//卷册标题数组
var volumn_index;//与卷标题对应的起始章节ID
var bookc_id;//vip章节ID
var var_array;//页面变量数组
var page_name;//页面文件名
var curr_cid;//当前章节
var prev_cid;//上一章节
var next_cid;//下一章节
var menu_title;//导航标题
var font_size;//字体大小调节
var font_lang;//字体繁体转换
var jump_link;//跳转链接
var window_title;//窗口标题
var book_author;//文章作者
var volumn_title="";//卷册标题
var chapter_num;//章节总数
var chapter_title;//章节标题
var chapter_content;//章节正文
var stat_show;//点击投票统计显示
var review_vote;//评论投票链接
var chapter_list;//章节列表
var chapter_list_cols=3;//章节列表列数
var click_num=0;//点击数
var vote_num=0;//投票数
var currentpos;//页面位置
var timer;//滚动定时器
function initPage()//页面初始化
{
try
{
page_name=location.href.replace(/.+\//g,"");
curr_cid=getCurrChapterId();
review_vote=getReviewVote();
loadStat(site_url+"/bookstat.php?bid="+book_id);//stat.php只需输出click_num=??;vote_num=??;+"&cid="+curr_cid
if(page_name=="list.htm")
{
window_title=getWindowTitle();
menu_title=getMenuTitle();
book_author=getBookAuthor();
chapter_list=getChapterList();
font_lang=getFontLang();
var_array=new Array("font_lang","menu_title","book_title","book_author","chapter_list","review_vote","copy_right");
parseHTML(var_array);
}
else
{
if((!curr_cid||isNaN(curr_cid)))//如果当前页cid参数不是数字,则跳转到目录list.htm
{
location.href="list.htm";
}
else
{
prev_cid=curr_cid-1;
next_cid=prev_cid+2;
loadChapter("content/"+curr_cid+".js");
}
window_title=getWindowTitle();
menu_title=getMenuTitle();
chapter_num=chapter_array.length;
font_size=getFontSize();
font_lang=getFontLang();
book_author=getBookAuthor();
var_array=new Array("font_lang","menu_title","font_size","book_author","review_vote","copy_right");
parseHTML(var_array);
setFontSize();
}
document.attachEvent("onkeydown", jumpPage);
document.onmousedown = sc;
document.ondblclick = initialize;
document.title=window_title;
window.status=window_title;
forbidCopy();
}
catch(e)
{
var msg="由于网络关系,书籍打开缓慢,请刷新。";
//alert(msg);
}
finally
{
releaseHTML(var_array);
}
}
function forbidCopy()//禁止复制代码
{
document.oncontextmenu = function() {alert("未经允许,禁止复制!");return false;}
document.body.oncopy = function() {alert("未经允许,禁止复制!");return false;}
document.body.oncut = function() {alert("未经允许,禁止复制!");return false;}
document.body.ondrag = function() {alert("未经允许,禁止复制!");return false;}
// document.body.onselectstart = function() {alert("未经允许,禁止复制!");return false;}
}
function loadJs(script_src)//预加载JS脚本
{
var o=document.scripts["next_chapter"];
if(typeof(o)=='object')
{
o.src=script_src;
}
else
{
o=document.createElement("<script id='next_chapter' src='"+script_src+"'><"+"/script>");
document.body.appendChild(o);
}
}
function loadChapter(script_src)//加载章节脚本
{
var o=document.scripts["chapter_js"];
if(typeof(o)=='object')
{
o.src=script_src;
}
else
{
o=document.createElement("<script id='chapter_js' src='"+script_src+"' onreadystatechange='parseChapter(this)'><"+"/script>");
document.body.appendChild(o);
}
}
function parseChapter(script_obj)//解析章节脚本
{
switch(script_obj.readyState)
{
case "complete":
case "loaded":
window_title=getWindowTitle();
jump_link=getJumpLink();
if(!chapter_content) gotoVipPage(curr_cid);
else chapter_title=getChapterTitle();
if(!chapter_title) location.href="list.htm";
chapter_content=cbb_trans(chapter_content);
font_lang=getFontLang();
var_array=new Array("chapter_title","chapter_content","font_lang","jump_link");
parseHTML(var_array);
document.title=getWindowTitle();
window.status=getWindowTitle();
loadJs("content/"+next_cid+".js");//预加载下一章
return;
}
}
function loadStat(script_src)//加载统计脚本
{
var o=document.createElement("<script id='stat_js' src='"+script_src+"' onreadystatechange='parseStat(this)'><"+"/script>");
document.body.appendChild(o);
}
function parseStat(script_obj)//解析统计脚本
{
switch(script_obj.readyState)
{
case "complete":
case "loaded":
stat_show=getStatShow();
var_array=new Array("stat_show");
parseHTML(var_array);
return;
}
}
function getCurrChapterId()//获取当前页面的章节ID:cid
{
var curr_cid=getCookie("htmlcid");
return curr_cid;
}
function getWindowTitle()//取得窗口标题
{
if(!chapter_title) chapter_title="目录列表";
var window_title=book_title+" - "+chapter_title+" - "+site_name+"倾情制作";
return window_title;
}
function getMenuTitle()//取得导航标题
{
var menu_title="<a href='"+site_url+"'>"+site_name+"首页</a>-><a href='"+site_url+"/bookroom.php'>总书库</a>->《<a href='"+site_url+"/bookinfo.php?bid="+book_id+"'>"+book_title+"</a>》";
return menu_title;
}
function getChapterTitle()//取得文章标题
{
volumn_title=getVolumnTitle(curr_cid);
if(volumn_set==1&&volumn_title!="") chapter_title=volumn_title+" - "+chapter_title;
return chapter_title;
}
function getBookAuthor()//取得文章作者
{
var book_author="作者:<a href='"+site_url+"/authorinfo.php?target="+author_name+"'' target='_blank'>"+author_name+"</a>";
return book_author;
}
function getStatShow(){
var stat_show="点击:"+click_num+" 投票:"+vote_num;
return stat_show;
}
function getReviewVote()//取得评论投票链接
{
var review_vote="<a href='"+site_url+"/bookreview.php?bid="+book_id+"' target='_blank'>评论</a> <a href='"+site_url+"/bookstat.php?vbid="+book_id+"' target='voteiframe'>投票</a> <a href='"+site_url+"/bookstat.php?mbid="+book_id+"&mcid="+curr_cid+"'>书签</a>";
return review_vote;
}
function getFontSize()//取得字体大小调节控件
{
var font_size="字体大小:<select name=fs size=1 onchange=changeFontSize(this.options[this.selectedIndex].value)><option value=12>12</option><option value=14 selected>14</option><option value=16>16</option><option value=18>18</option><option value=20>20</option><option value=22>22</option><option value=24>24</option></select>";
return font_size;
}
function changeFontSize(font_size) //改变字体大小
{
var chapter_content=document.getElementsByName("chapter_content")[0];
chapter_content.style.fontSize=font_size;
setCookie("font_size",font_size);
}
function setFontSize() //设置字体大小
{
var chapter_content=document.getElementsByName("chapter_content")[0];
var font_size_select=document.getElementsByName("fs")[0];
var font_size=getCookie("font_size");
var font_size_index=0;
switch (font_size)
{
case "12":font_size_index=0;break;
case "14":font_size_index=1;break;
case "16":font_size_index=2;break;
case "18":font_size_index=3;break;
case "20":font_size_index=4;break;
case "22":font_size_index=5;break;
case "24":font_size_index=6;break;
default:font_size_index=0;
}
if(font_size)
{
chapter_content.style.fontSize=font_size;
font_size_select.selectedIndex=font_size_index;
}
}
function getFontLang()//取得繁简转换控件
{
var font_lang="";
if(getCookie("font_lang")=="1")
{
font_lang="<a href='javascript:changeFontLang(0)'>繁->简</a>";
}
else
{
font_lang="<a href='javascript:changeFontLang(1)'>简->繁</a>";
}
return font_lang;
}
function changeFontLang(font_lang) //改变字体繁简
{
setCookie("font_lang",font_lang);
location.reload();
}
function setCookie(name,value) //设置cookie
{
var t= new Date();
t.setTime(t.getTime()+1*3600000);
document.cookie=name+"="+value+";path=/;expires="+ t.toGMTString();
}
function getCookieVal(offset) //取得offset位置的cookie值
{
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1) endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}
function getCookie(name) //取得名称为name的cookie值
{
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 getJumpLink()//取得页面跳转链接
{
var jump_link;
if(prev_cid<1)
jump_link="上一页 <a href='list.htm'>返回目录</a> <a href='javascript:gotoPage("+next_cid+")'>下一页</a>";
else if(next_cid>chapter_num)
jump_link="<a href='javascript:gotoPage("+prev_cid+")'>上一页</a> <a href='list.htm'>返回目录</a> 下一页";
else
jump_link="<a href='javascript:gotoPage("+prev_cid+")'>上一页</a> <a href='list.htm'>返回目录</a> <a href='javascript:gotoPage("+next_cid+")'>下一页</a>";
return jump_link;
}
function getChapterList()//取得章节列表
{
var list="<table width='750' border='2' cellpadding='3' cellspacing='0' bordercolor='#E4E9F1' align='center'>";
var list_num=chapter_array.length;
var i=1;
var j=0;
var cols=0;
for(i=1;i<=list_num;i++)
{
cols=cols%chapter_list_cols;
if(volumn_set==1&&isNewVolumn(i))
{
if(cols>0)
{
for(j=cols;j<chapter_list_cols;j++) list+="<td><span class='max2'> </span></td>";
list+="</tr>";
}
list+="<tr bgcolor='#ccccef'><td colspan="+chapter_list_cols+" align=center><span class='max2'> "+getVolumnTitle(i)+"</span></td></tr>";
cols=0;
}
if(cols==0)
{
list+="<tr>";
}
list+="<td width=33%><span class='middle'> <a href='javascript:gotoPage("+i+")'>"+chapter_array[i-1]+"</a></span></td>";
if(cols==chapter_list_cols-1)
{
list+="</tr>";
cols=0;
}
else cols++;
}
if(cols!=0)
{
for(j=cols;j<chapter_list_cols;j++) list+="<td><span class='middle'> </span></td>";
list+="</tr>";
}
list+="</table>";
return list;
}
function isNewVolumn(id)//根据章节ID判断是否是新开卷
{
var i=0;
for(i=0;i<volumn_index.length;i++)
{
if(id==volumn_index[i]) return true;
}
return false;
}
function getVolumnTitle(id)//根据卷册ID取得卷册标题
{
var i=0;
for(i=0;i<volumn_index.length;i++)
{
if(id>=volumn_index[i]) volumn_title=volumn_array[i];
else return volumn_title;
}
return volumn_title;
}
function jumpPage()//按健翻页
{
if (event.keyCode==37&&prev_cid>=1) gotoPage(prev_cid);
if (event.keyCode==39&&next_cid<=chapter_num) gotoPage(next_cid);
if (event.keyCode==13) location.href="list.htm";
}
function gotoPage(cid)
{
setCookie("htmlcid",cid);
if(page_name=="list.htm") location.href="index.htm";
curr_cid=cid;
prev_cid=cid-1;
next_cid=prev_cid+2;
location="#";
jump_link="跳转中 <a href='list.htm'>返回目录</a> 请稍候";
var_array=new Array("jump_link");
parseHTML(var_array);
loadChapter("content/"+cid+".js");
}
function gotoVipPage(cid)
{
loadChapter(site_url+"/vip.php?bid="+book_id+"&cid="+cid);//取得VIP章节,地址为动态PHP脚本
if(!chapter_content) chapter_content="<center>对不起,您尚未购买此章节或者由于网速过慢,内容加载失败。请尝试用左右键换页重新打开本页。<br><br><a href='"+site_url+"/shopinfo.php?cid="+bookc_id+"' target='_blank'><b><font color=blue>我是会员我要买</font></b></a> <a href='"+site_url+"/login.php' target='_blank'><b>VIP登录</b></a> <a href='"+site_url+"/mobilepay.php' target='_blank'><b>VIP续费</b></a></center>";
else return;
chapter_content=cbb_trans(chapter_content);
var_array=new Array("chapter_content");
parseHTML(var_array);
}
function parseHTML(var_array)//替换变量
{
if(!var_array) return;
var i=0;
var j=0;
var divs;
var lang="";
// var str="";
for(i=0;i<var_array.length;i++)
{
// str="正在初始化:"+var_array[i] +"\n"+ eval(var_array[i]);
// alert(str);
divs=document.getElementsByName(var_array[i]);
if(getCookie("font_lang")=="1")
{
lang=".s2t()";
}
j=0;
while(divs[j])
{
eval("divs["+j+"].innerHTML="+var_array[i]+lang);
j++;
}
}
}
function releaseHTML()//释放变量资源
{
if(!var_array) return;
var i=0;
var j=0;
for(i=0;i<var_array.length;i++)
{
// alert("正在释放:"+var_array[i]);
eval(var_array[i]+"='';");
}
}
function cbb_trans(str) {//cbb替换
str = str.replace(" "," ");
str = str.replace(/\[url=([^\]]+)\](.*?)\[\/url\]/g,"<a href='$1' target=_blank>$2</a>");
str = str.replace(/\[color=([^\]]+)\](.*?)\[\/color\]/g,"<font color='$1'>$2</font>");
str = str.replace(/\[img\](.*?)\[\/img\]/g,"<img src='$1'>");
return str;
}
function initialize() //设置滚动定时器
{
timer = setInterval("scrollwindow()", 1);
}
function sc() //取消滚动
{
clearInterval(timer);
}
function scrollwindow() //滚动页面
{
currentpos=document.body.scrollTop;
window.scroll(0,++currentpos);
if (currentpos != document.body.scrollTop) sc();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -