mình không rành về js nên cách đây 5 năm mình có copy đoạn mã thông báo ngày sinh nhật của bạn bè. lúc đó chạy trên IE rất tốt. bỏ đi một thời gian giờ mình chạy lại trên chrom thì mã js đó không hoạt động được, bác bào giỏi về js chỉ giúp em với, hoặc chỉnh sửa gì để nó chạy được, em xin cảm ơn rất nhiều

đoạn mã đây ạ

Mã:

<html>

<head>

<meta name="GENERATOR" content="Microsoft FrontPage 6.0">

<meta name="ProgId" content="FrontPage.Editor.Document">

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Nhatquang java</title>

</head>

<body>

<script language="JavaScript">

<!--

function ngaysinh(year,month,date,ho,ten) {

this.year=year

this.month=month

this.date=date

this.ho=ho

this.ten=ten

}

function ngaysinhlist() {

}

//DOAN MA NHAT NGAY SINH VA TEN

blist=new ngaysinhlist()

/////////////////////SINH NHAT THANG 1//////////////////////////////

blist[0]= new ngaysinh(1987,01,10,"Nguyễn Thị Lan","Anh")

blist[1]= new ngaysinh(1986,01,01,"Hồ Biên","Cương")

blist[2]= new ngaysinh(1986,01,07,"Lý Phúc","Hoài")

blist[3]= new ngaysinh(1985,01,10,"Đặng Văn","Tám")

blist[4]= new ngaysinh(1986,01,24,"Nguyễn Tấn","Thủ")

/////////////////////SINH NHAT THANG 2/////////////////////////////

blist[5]= new ngaysinh(1983,02,10,"Võ Thị","Dung")

blist[6]= new ngaysinh(1985,02,22,"Nguyễn Hữu","Hoàng")

/////////////////////SINH NHAT THANG 3////////////////////////////////

blist[7]= new ngaysinh(1986,03,17,"Phan Thị Lan","Viên")

blist[8]= new ngaysinh(1985,03,28,"Đoàn Thị Kim","Phượng")

/////////////////////SINH NHAT THANG 4//////////////////////////////////

blist[9]= new ngaysinh(1991,04,28,"Bé","Hiền")

blist[10]= new ngaysinh(1986,04,26,"Nguyễn Thị Hoàng","Oanh")

blist[11]= new ngaysinh(1986,04,22,"Nguyễn Hương","Quỳnh")

blist[12]= new ngaysinh(1985,04,10,"Trần Thị Thanh","Vân")

///////////////////////SINH NHAT THANG 5///////////////////////////////////

blist[13]= new ngaysinh(1986,05,17,"Đặng Mạnh","Hùng")

blist[14]= new ngaysinh(1986,05,05,"Hoàng Thị Anh","Phương")

blist[15]= new ngaysinh(1987,05,20,"Nguyễn Thị","Thu")

blist[16]= new ngaysinh(1984,05,15,"Khê Bá Hoàng","Trể")

blist[17]= new ngaysinh(1986,05,08,"Nguyễn Văn","Tuyển")

///////////////////////SINH NHAT THANG 6/////////////////////////////////

blist[18]= new ngaysinh(1985,06,27,"Nguyễn Thị","Bắc")

////////////////////////SINH NHAT THANG 7////////////////////////////////

blist[19]= new ngaysinh(1983,07,20,"Nguyễn Thị","Trang")

blist[20]= new ngaysinh(1986,07,04,"Huỳnh Thiện","Vĩnh")

/////////////////////////SINH NHAT THANG 8///////////////////////////////

blist[21]= new ngaysinh(1968,08,05,"","Má")

blist[22]= new ngaysinh(1986,08,19,"Nguyễn Văn","Huy")

blist[23]= new ngaysinh(1986,08,08,"Lê Thị Duy","Khánh")

blist[24]= new ngaysinh(1986,08,04,"Hoàng Trọng","Minh")

blist[25]= new ngaysinh(1985,08,20,"Võ Văn","Vàng")

/////////////////////////SINH NHAT THANG 9////////////////////////////////////

blist[26]= new ngaysinh(1964,09,06,"","Ba và Hoàng Thị Lyly (1986)")

blist[27]= new ngaysinh(1985,09,05,"Trần Thị Minh","Thi")

blist[28]= new ngaysinh(1983,09,25,"Mai Đức","Toàn")

blist[29]= new ngaysinh(1985,09,22,"Vũ Đình","Hiệu")

blist[30]= new ngaysinh(1987,09,26,"Bùi Thị Thảo","Trang")

blist[31]= new ngaysinh(1984,09,01,"Tạ Đức","Định")

blist[32]= new ngaysinh(1983,09,20,"Nguyễn Thị","Hòa")

blist[33]= new ngaysinh(1986,09,11,"Nguyễn Thị Bích","Liên")

blist[34]= new ngaysinh()

//////////////////////////SINH NHAT THANG 10/////////////////////////////////////

blist[35]= new ngaysinh(1985,10,10,"","Trương Văn Hải, Nguyễn Hùng Vũ")

blist[36]= new ngaysinh(1984,10,11,"Trần Nhật","Vỹ;")

blist[37]= new ngaysinh(1986,10,30,"","Nguyễn Thị Duyên, Nguyễn Văn Dương, Phan Thanh Hòa")

blist[38]= new ngaysinh()

blist[39]= new ngaysinh()

blist[40]= new ngaysinh()

///////////////////////////SINH NHAT THANG 11//////////////////////////////////////

blist[41]= new ngaysinh(1984,11,28,"","Nguyễn Thị Hảo, Nguyễn Ngọc Hân (1986)")

blist[42]= new ngaysinh()

////////////////////////////SINH NHAT THANG 12//////////////////////////////

blist[43]= new ngaysinh(1987,12,03,"Trần Hữu","Thịnh")

blist[44]= new ngaysinh(1985,12,20,"","Nguyễn Thị Thu Hà, Trương Minh Trí")

blist[45]= new ngaysinh(1986,12,10,"Ninh Văn","Kiên")

blist[46]= new ngaysinh()

/////////////////////////////TOTAL: 46 list//////////////////////////////////

//BAT DAU DOAN MA BAO SINH NHAT

var now=new Date()

today=new Date(now.getYear(),now.getMonth(),now.getDate())// today 0:00:00

function daysFromToday(sdate) {

return Math.round((sdate.getTime()-today.getTime())/(24*60*60*1000))

}

function writeNextngaysinh(list) {

var daysToClosest=730

var closest

for (var i in list) {

thisDate=new Date(today.getYear(),list[i].month-1,list[i].date)

if (daysFromToday(thisDate)<0)

thisDate.setYear(today.getYear()+1)

if (daysFromToday(thisDate)<daysToClosest) {

daysToClosest=daysFromToday(thisDate)

closest=i

}

}

if (daysToClosest==0)

document.write("<p align = center><font color = #ff0000><b>Hôm nay là sinh nhật lần thứ "+(today.getYear()-list[closest].year)+" của "+list[closest].ho+" "+list[closest].ten+"! Suntulip.Blog chúc mừng sinh nhật "+list[closest].ten+" nha!</b></font></p>")

else if (daysToClosest==1)

document.write("<p align = center><font color = #ff00ff>Ngày mai là sinh nhật lần thứ "+(today.getYear()-list[closest].year)+" của "+list[closest].ho+" "+list[closest].ten+"! Cho Suntulip.Blog gởi lời chúc mừng sinh nhật nhé</font></p>")

else if (daysToClosest==2)

document.write("<p align = center><font color = #0000ff>Ngày mốt là sinh nhật lần thứ "+(today.getYear()-list[closest].year)+" của "+list[closest].ho+" "+list[closest].ten+"! Cho Suntulip.Blog gửi lời chúc mừng sinh nhật nhé</font></p>")

else if (daysToClosest==3)

document.write("<p align = center><font color = #0000ff>Ngày kia là sinh nhật lần thứ "+(today.getYear()-list[closest].year)+" của "+list[closest].ho+" "+list[closest].ten+"! Cho Suntulip.Blog gởi lời chúc mừng sinh nhật nhé</font></p>")

else

document.write("<p align = center><font color = #0000ff>Ngày "+list[closest].date+" tháng "+list[closest].month+" là sinh nhật của "+list[closest].ho+" "+list[closest].ten+"; còn cách hôm nay "+daysToClosest+" ngày nữa.</font></p>")

}

////////////////////////////DOAN MA BAO NGAY KE TIEP//////////////

function writeNext2ngaysinh(list) {

var daysToClosest=365

var closest

for (var i in list) {

thisDate=new Date(today.getYear(),list[i].month-1,list[i].date-1)

if (daysFromToday(thisDate)<0)

thisDate.setYear(today.getYear()+1)

if (daysFromToday(thisDate)<daysToClosest) {

daysToClosest=daysFromToday(thisDate)

closest=i

}

}

if (daysToClosest==0)

document.write("<p align = center><font color = #0000ff>Ngày mai là sinh nhật lần thứ "+(today.getYear()-list[closest].year)+" của "+list[closest].ho+" "+list[closest].ten+"! Suntulip.Blog mừng sinh nhật "+list[closest].ten+" nha!</b></font></p>")

else

document.write("<p align = center><font color = #ff00ff>Thông báo: Ngày "+list[closest].date+" tháng "+list[closest].month+" là sinh nhật của "+list[closest].ho+" "+list[closest].ten+".</font></p>")

}

//-->

</script>

<center><h1><font color="#FF00FF">Suntulip Birthday Calendar</font></h1></center>

<p>Đây là lịch có chức năng thông báo ngày sinh nhật của các thành viên

<a href="http://www.my.opera.com/suntulip/blog/">

<span style="text-decoration: none">Blog</span></a>, bao gồm:

<ul><li>Gởi lời chúc mừng sinh nhật tới người đó.

<li>Thông báo sinh nhật lần thứ mấy.

<li>Số ngày để tới sinh nhật một người.</ul></p>

<script language="JavaScript">

<!--

writeNextngaysinh(blist)

writeNext2ngaysinh(blist)

//-->

</script>

<p> </p>

</body>

</html>