

function DomainClass(){ 
 //记录本身 
 var ōwner=this; 
 //域名集合 
 var arr=[]; 
 //////////////////////////////////////公开属性 
 //设定缺省目录 
 owner.defaultDir=""; 
 //设定缺省域名 
 owner.defaultDomain=""; 
 //设定缺省跳转网址 
 owner.defaultURL=""; 
 //不存在的域名跳转 
 owner.noExistURL=""; 
 /////////////////////////////////////公开方法 
 //添加域名方法 
 //参数1:域名 2:目录 3:输出域名 4:指定跳转地址 
 owner.addDomain=function(){ 
 if(arguments.length==0){ 
 return; 
 } 
 if(arguments.length>0){ 
 var tempObj=new Object(); 
 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); //推入数组 
 } 
 //查找域名 
 function seekDomain(href_loc){ 
 //取得二级域名头 
 var loc=href_loc.split("//")[1].split(".")[0]; 
 for(var i=0;i //判定域名 
 if(arr[i].domain==loc){ 
 //跳转 
 jumpWeb(href_loc,arr[i]); 
 return; 
 } 
 } 
 //不存在时处理的域名对象 
 var notObj=new Object(); 
 notObj.out=owner.defaultDomain; 
 notObj.dir=owner.defaultDir; 
 notObj.url=owner.noExistURL; 
 alert("提示:
\n你还没有设置名为: \""+loc+"\" 这样的域名!"); 
 //域名头替换 
 href_loc=href_loc.replace(/\/\/[^.]+/,"//"+notObj.out); 
 jumpWeb(href_loc,notObj); 
 } 
 //跳转函数 
 function jumpWeb(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("请设置:\n\n1.缺省目录:DomainClass.defaultDir. \n\n2.缺省域名:DomainClass.defaultDomain "); 
 } 
 else{ 
 seekDomain(self.location.href); 
 } 
 } 
} 
index.htm 
 
addDomain:添加域名方法,最少一个参数,否则视无效
*/ 
//设置默认目录 
d.defaultDir="pal"; 
//设置默认跳转 
//d.defaultURL="http://hi.baidu.com/pallove"; 
//设置默认输出域名 
d.defaultDomain="pal"; 
//添加二级域名 
d.addDomain("pal","pal","pal"); 
d.addDomain("blog","blog","pal"); 
d.addDomain("leon","leon","love"); 
d.addDomain("51js","51js","51js","http://www.51js.com/11191"); 
d.addDomain("baidu","","","http://hi.baidu.com/pallove"); 
d.init(); 
//--> 
详细效果请查看 
URL跳出 
无忧逍遥的Blog http://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 
如您使用或转载,请保留版权与个人信息。谢谢!
