DomainClass.js
/*
@ClassDomainClass(二级域名转向类)
@author逍遥云-http://bbs.51js.com
@Version1.0
@Date2006-11-2
@Rights如使用请保留此信息,谢谢
*/
functionDomainClass(){
//记录本身
varōwner=this;
//域名集合
vararr=[];
//////////////////////////////////////公开属性
//设定缺省目录
owner.defaultDir="";
//设定缺省域名
owner.defaultDomain="";
//设定缺省跳转网址
owner.defaultURL="";
//不存在的域名跳转
owner.noExistURL="";
/////////////////////////////////////公开方法
//添加域名方法
//参数1:域名2:目录3:输出域名4:指定跳转地址
owner.addDomain=function(){
if(arguments.length==0){
return;
}
if(arguments.length>0){
vartempObj=newObject();
tempObj.domain=arguments[0];//域名
tempObj.dir="";//对应目录
tempObj.out="";//输出域名
tempObj.url="";//指定跳转地址
}
if(arguments.length>1){
tempObj.dir=arguments[1];
}
if(arguments.length>2){
tempObj.out=arguments[2];
}
if(arguments.length>3){
tempObj.url=arguments[3];
}
arr.push(tempObj);//推入数组
}
//查找域名
functionseekDomain(href_loc){
//取得二级域名头
varloc=href_loc.split("//")[1].split(".")[0];
for(vari=0;i<arr.length;i++){
//判定域名
if(arr[i].domain==loc){
//跳转
jumpWeb(href_loc,arr[i]);
return;
}
}
//不存在时处理的域名对象
varnotObj=newObject();
notObj.out=owner.defaultDomain;
notObj.dir=owner.defaultDir;
notObj.url=owner.noExistURL;
alert("提示:nn你还没有设置名为:""+loc+""这样的域名!");
//域名头替换
href_loc=href_loc.replace(///[^.]+/,"//"+notObj.out);
jumpWeb(href_loc,notObj);
}
//跳转函数
functionjumpWeb(href_loc,obj){
//判定跳转
if(obj.url!=""){
self.location=obj.url;
return;
}
//替换空域名为默认
if(obj.out==""){
obj.out=owner.defaultDomain;
}
//域名替换
href_loc=href_loc.replace(///[^.]+/,"//"+obj.out);
//替换空目录为默认
if(obj.dir==""){
obj.dir=owner.defaultDir;
}
//目录替换
href_loc=href_loc.replace(/(//[^/]+/)/,"$1"+obj.dir+"/");
//重定义网址
self.location=href_loc;
}
//初始化,公开
owner.init=function(){
//如果设置了默认跳转
if(owner.defaultURL!=""){
self.location=owner.defaultURL;
return;
}
//如果没设缺省目录或缺省域名
if(owner.defaultDir==""||owner.defaultDomain==""){
alert("请设置:nn1.缺省目录:DomainClass.defaultDir.nn2.缺省域名:DomainClass.defaultDomain");
}
else{
seekDomain(self.location.href);
}
}
}
index.htm
<HTML>
<HEAD>
<TITLE>Loading....</TITLE>
<scrīptLANGUAGE="Javascrīpt"src="leon/code/javascrīpt/domainclass.js"></scrīpt>
</HEAD>
<BODY>
<scrīptLANGUAGE="Javascrīpt">
<>
</scrīpt>
</BODY>
</HTML>
详细效果请查看
URL跳出
无忧逍遥的Bloghttp://51js.pallove.net
百度空间http://baidu.pallove.net
目录跳转
http://pal.pallove.net/
http://love.pallove.net
http://flash.pallove.net
在此考贝以上代码下载此类文件
http://pal.pallove.net/leon/code/javascrīpt/domainclass.js
如您使用或转载,请保留版权与个人信息。谢谢!