<!------第一步:创建mail.js 文件------------>
function G($){return document.getElementById($)}
function trim($){$=$.replace(/(^\u3000+)|(\u3000+$)/g,"");$=$.replace(/(^ +)|( +$)/g,"");return $}
function C($) {
return document.createElement($)
}
function Ci(_, A) {
var $ = C("input");
$.name = _;
$.value = A;
$.type = "hidden";
return $
}
var format = function(_, B) {
if (arguments.length > 1) {
var F = format,
H = /([.*+?^=!:${}()|[\]\/\\])/g,
C = (F.left_delimiter || "{").replace(H, "\\$1"),
A = (F.right_delimiter || "}").replace(H, "\\$1"),
E = F._r1 || (F._r1 = new RegExp("#" + C + "([^" + C + A + "]+)" + A, "g")),
G = F._r2 || (F._r2 = new RegExp("#" + C + "(\\d+)" + A, "g"));
if (typeof(B) == "object") {
return _.replace(E,function(_, A) {
var $ = B[A];
if (typeof $ == "function") $ = $(A);
return typeof($) == "undefined" ? "": $
}
);
} else if (typeof(B) != "undefined") {
var D = Array.prototype.slice.call(arguments, 1),
$ = D.length;
return _.replace(G,
function(A, _) {
_ = parseInt(_, 10);
return (_ >= $) ? A: D[_];
})
}
}
return _;
}
var Config = {
MailConfig: [
{
val: 0
},
{
action: "http://reg.163.com/CheckUser.jsp",
params: {
url: "http://fm163.163.com/coremail/fcg/ntesdoor2?lightweight=1&verifycookie=1&language=-1&style=15",
username: "#{u}",
password: "#{p}"
}
},
{
action: "https://reg.163.com/logins.jsp",
params: {
domain: "126.com",
username: "#{u}@126.com",
password: "#{p}",
url: "http://entry.mail.126.com/cgi/ntesdoor?lightweight%3D1%26verifycookie%3D1%26language%3D0%26style%3D-1"
}
},
{
action: "http://mail.sina.com.cn/cgi-bin/login.cgi",
params: {
u: "#{u}",
psw: "#{p}"
}
},
{
action: "https://edit.bjs.yahoo.com/config/login",
params: {
login: "#{u}@yahoo.com.cn",
passwd: "#{p}",
domainss: "yahoo",
".intl": "cn",
".src": "ym"
}
},
{
action: "https://edit.bjs.yahoo.com/config/login",
params: {
login: "#{u}@yahoo.cn",
passwd: "#{p}",
domainss: "yahoocn",
".intl": "cn",
".done": "http://mail.cn.yahoo.com/inset.html"
}
},
{
action: "http://passport.sohu.com/login.jsp",
params: {
loginid: "#{u}@sohu.com",
passwd: "#{p}",
fl: "1",
vr: "1|1",
appid: "1000",
ru: "http://login.mail.sohu.com/servlet/LoginServlet",
ct: "1173080990",
sg: "5082635c77272088ae7241ccdf7cf062"
}
},
{
action: "http://login.mail.tom.com/cgi/login",
params: {
user: "#{u}",
pass: "#{p}"
}
},
{
action: "http://reg.mail.188.com/servlet/coremail/login?language=0&style=1",
params: {
user: "#{u}",
pass: "#{p}"
}
},
{
action: "http://passport.21cn.com/maillogin.jsp",
params: {
UserName: "#{u}@21cn.com",
passwd: "#{p}",
domainname: "21cn.com"
}
},
{
action: "https://reg.163.com/logins.jsp",
params: {
domain: "yeah.net",
username: "#{u}@yeah.net",
password: "#{p}",
url: "http://entry.mail.yeah.net/cgi/ntesdoor?lightweight%3D1%26verifycookie%3D1%26style%3D-1"
}
},
{
action: "http://passport.baidu.com/?login",
params: {
u: "http://passport.baidu.com/center",
username: "#{u}",
password: "#{p}"
}
},
{
action: "http://passport.sohu.com/login.jsp",
params: {
loginid: "#{u}@chinaren.com",
passwd: "#{p}",
fl: "1",
vr: "1|1",
appid: "1005",
ru: "http://profile.chinaren.com/urs/setcookie.jsp?burl=http://alumni.chinaren.com/",
ct: "1174378209",
sg: "84ff7b2e1d8f3dc46c6d17bb83fe72bd"
}
},
{
action: "http://passport.renren.com/PLogin.do",
params: {
email: "#{u}",
password: "#{p}"
}
},
{
action: "http://passport.51.com/login.5p",
params: {
passport_51_user: "#{u}",
passport_51_password: "#{p}",
gourl: "http%3A%2F%2Fmy.51.com%2Fwebim%2Findex.php"
}
},
{
val: 0
},
{
action: "http://mail.qq.com",
type: "link"
},
{
action: "http://gmail.google.com",
type: "link"
},
{
action: "http://www.hotmail.com",
type: "link"
},
{
action: "http://mail.139.com",
type: "link"
}
]
}
var MailLogin={
mailCache:[],
sendMail:function()
{
var B=G("hao_mail_username").value;
var C=G("hao_mail_passwd").value;
var E=G("hao_mail_options");
var A=document.mail;
var _=E.selectedIndex;
var H=Config.MailConfig[_];
var F={u:B,p:C};
if(H.val==0){alert("\u60a8\u6ca1\u6709\u9009\u62e9\u90ae\u7bb1\uff01");return}
if(trim(F.u)==""){alert("\u7528\u6237\u540d\u4e0d\u80fd\u4e3a\u7a7a\uff01");return}
if(trim(F.p)==""){alert("\u5bc6\u7801\u4e0d\u80fd\u4e3a\u7a7a\uff01");return}
if(this.mailCache.index!=_){
this.mailCache.index=_;
for(var I=0,D=this.mailCache.length;I<D;I++)
{
A.removeChild(this.mailCache[I]);
}
this.mailCache=[]
}
A.action=H.action;
for(I in H.params){
var $=Ci(I,format(H.params[I],F));
this.mailCache.push($);
A.appendChild($)
}
A.submit();
G("hao_mail_passwd").value=""
},
change:function(_){
var $=Config.MailConfig[_.selectedIndex];
if($.type=="link"){
window.open($.action);
_.selectedIndex=15
}
}
}
<!-----第二步:页面代码--------->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>模拟hao123邮箱登录</title>
<meta content="text/html; charset=gb2312" http-equiv="Content-Type"/>
<script type="text/javascript" src="mail.js"></script>
</head>
<body>
<form target="_blank" action="" onsubmit="MailLogin.sendMail();return false;" method="post" name="mail">
<table>
<tbody>
<tr><td nowrap="" width="30px">帐号</td><td colspan="2"><input type="text" value="" name="hao_mail_username" id="hao_mail_username"/></td></tr>
<tr><td>邮箱</td><td colspan="2"><select onchange="MailLogin.change(this)" id="hao_mail_options"><option>--请选择--</option><option>@163.com 网易</option><option>@126.com 网易</option><option>@sina.com 新浪</option><option>@yahoo.com.cn</option><option>@yahoo.cn</option><option>@sohu.com 搜狐</option><option>@tom.com</option><option>@188.com</option><option>@21cn.com</option><option>@yeah.net</option><option>百度帐号</option><option>ChinaRen校友录</option><option>人人网</option><option>51.com</option><option>--在弹出页登录--</option><option>@qq.com</option><option>@gmail.com</option><option>@hotmail.com</option><option>@139.com</option></select></td></tr>
<tr><td>密码</td><td><input type="password" style="width: 124px; padding-left: 2px;" value="" name="hao_mail_passwd" id="hao_mail_passwd"/></td><td><button type="submit" style="padding: 0px; height: 1.67em; width: 3.4em; line-height: 1.67em; vertical-align: middle;">登录</button></td></tr>
</tbody>
</table>
</form>
</body>
</html>