那位大哥大姐能帮我把下面的VBScript脚本转换成JavaScript脚本?高分答谢!
<html>
 <head>
 <title>K.G Script3D 3.00 - 霓虹灯(字库滚动屏)</title>
 </head>
 <body bgcolor="#000000" text="#FFFFFF">
 <p id="idText" style="color:rgb(255,255,255)"></p>
 <p id="idInsertObject"></p> 
 </body>
<script language="VBScript" type="text/VBScript">
'CSDN KiteGirl 原创
Dim uSP_x, uSP_y, uSP_z
Dim uSP_cr, uSP_cg, uSP_cb
Dim uD_Mx, uD_My, uD_Mz
Dim uD_Rx, uD_Ry, uD_Rz
Dim uD_Mtx_Mx, uD_Mtx_Mr
Dim uD_Pix_x, uD_Pix_y, uD_Pix_z, uD_Pix_s
Dim uF_Va, uF_Vd
Dim uV_Vx, uV_Vy, uV_Vz, uV_Sc
Dim uV_Mtx_Mx, uV_Mtx_Mr
Dim uV_Pix_x, uV_Pix_y, uV_Pix_z
Dim uElm, uElm_Len
Dim uWeb_Tv, uWeb_Tw
Dim uWeb_WW, uWeb_WH
Dim uWeb_FontSize
Dim uLg
Dim uR, uG, uB
Dim uOR, uOG, uOB
Dim uFTS, uSt, uSi
Sub window_onload()
 uSt = "10! 9! 8! 7! 6! 5! 4! 3! 2! 1! CSDN Happy New Year! KiteGirl 2009.1.1 "
 WFontSet : MakeModule
 With document.body
 uWeb_WW = .clientWidth 
 uWeb_WH = .clientHeight 
 End With 
 uD_Rz = 0 : uD_Rx = 0 : uD_Ry = 0
 uF_Va = 15 : uF_Vd = 40
 uV_Vx = uWeb_WW \ 2 : uV_Vy = uWeb_WH \ 2
 uV_Vz = 0 : uV_Sc = 15
 uWeb_Tw = 33 : uWeb_FontSize = 5
 uD_Mx = -30 : uD_My = 0 : uD_Mz = 0 
 uD_Rz = 0 : uD_Rx = 45 : uD_Ry = 20
 uD_Mtx_Mx = Array(0.9397, -0.2418, 0.2418, -28.1908, 0, 0.7071, 0.7071, 0, -0.3420, -0.6446, 0.6446, 10.2606, 0, 0, 0, 1)
 uV_Mtx_Mx = Array(15, 0, 0, 629, 0, 15, 0, 424, 0, 0, 15, 0, 0, 0, 0, 1)
 PXE_MTXTram3D uSP_x, uSP_y, uSP_z, uD_Mtx_Mx, uD_Mtx_Mr, uD_Pix_x, uD_Pix_y, uD_Pix_z
 FIT_PSV uD_Pix_x, uD_Pix_y, uD_Pix_z, uF_Va, uF_Vd, uD_Pix_x, uD_Pix_y, uD_Pix_z, uD_Pix_s
 PXE_MTXTram3D uD_Pix_x, uD_Pix_y, uD_Pix_z, uV_Mtx_Mx, uV_Mtx_Mr, uV_Pix_x, uV_Pix_y, uV_Pix_z
 Web_TimeLoop
End Sub
Sub MakeModule
 tWC = 10 : tWH = 12 : tWW = 6
 tVW = (tWC * tWW)
 uElm_Len = tWH * tVW - 1
 uElm = ELM_Create(uElm_Len)
 ReDim uSP_x(uElm_Len), uSP_y(uElm_Len), uSP_z(uElm_Len)
 ReDim uSP_cr(uElm_Len), uSP_cg(uElm_Len), uSP_cb(uElm_Len)
 ReDim uD_Pix_x(uElm_Len), uD_Pix_y(uElm_Len), uD_Pix_z(uElm_Len)
 ReDim uD_Pix_s(uElm_Len), uLg(uElm_Len)
 ReDim uV_Pix_x(uElm_Len), uV_Pix_y(uElm_Len), uV_Pix_z(uElm_Len)
 For tI = 0 To uElm_Len
 tX = tI Mod tVW
 tZ = tI \ tVW : tA = tX * 360 / tVW
 tR = tX * 10 / tVW
 tRY = tR * Sin(Radian(tA))
 uSP_x(tI) = tX : uSP_y(tI) = tRY : uSP_z(tI) = tZ
 uSP_cr(tI) = 0 : uSP_cg(tI) = 0 : uSP_cb(tI) = 0
 uLg(tI) = 1 - WPGet(tX + uSi, tZ) * 0.7
 Next
End Sub
Sub WFontSet()
 ReDim tDCT(255) : tECT = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
 For tI = 0 To 63
 tDCT(Asc(Mid(tECT, tI + 1, 1))) = tI 
 Next
tFTS =  tFTS & "AAAAAAAAAAAAAAEEEEEEAEAAAUKKAAAAAAAAAAUU/UK/KKAA"
tFTS =  tFTS & "AEeVFGMUVPEAAASVNKUsqSAAAAEKKeVVJ2AAACCBAAAAAAAA"
tFTS =  tFTS & "AgQIIIIIIQgAACEIIIIIIECAAAAEVOOVEAAAAAEEEfEEEAAA"
tFTS =  tFTS & "AAAAAAAAACCBAAAAAfAAAAAAAAAAAAAAACAAAQIIIEECCCBA"
tFTS =  tFTS & "AAORRRRRROAAAAEGEEEEEOAAAAORRIECBfAAAAORQMQQROAA"
tFTS =  tFTS & "AAIMKKJeIYAAAAfBBPQQROAAAAOJBPRRROAAAAfJIEEEEEAA"
tFTS =  tFTS & "AAORRORRROAAAAORRReQSOAAAAAAEAAAAEAAAAAAAEAAAEEA"
tFTS =  tFTS & "AgQIECEIQgAAAAAAfAAfAAAAACEIQgQIECAAAAORRIEEAEAA"
tFTS =  tFTS & "AAORZVVdBeAAAAEEMKKeSzAAAAPSSOSSSPAAAAeRBBBBROAA"
tFTS =  tFTS & "AAPSSSSSSPAAAAfSKOKCSfAAAAfSKOKCCHAAAAcSBB5RSMAA"
tFTS =  tFTS & "AAzSSeSSSzAAAAfEEEEEEfAAAA+IIIIIIJHAAA3SKGKKS3AA"
tFTS =  tFTS & "AAHCCCCCi/AAAAbbbbVVVVAAAA7SWWaaSXAAAAORRRRRROAA"
tFTS =  tFTS & "AAPSSOCCCHAAAAORRRRXZOYAAAPSSOKSS3AAAAeRBGIQRPAA"
tFTS =  tFTS & "AAfVEEEEEOAAAAzSSSSSSMAAAAzSSKKMEEAAAAVVVOKKKKAA"
tFTS =  tFTS & "AAbKKEEKKbAAAAbKKEEEEOAAAAfJIEECSfAAAcEEEEEEEEcA"
tFTS =  tFTS & "ACCCEEIIIQAAAOIIIIIIIIOAAEKAAAAAAAAAAAAAAAAAAAA/"
tFTS =  tFTS & "AEAAAAAAAAAAAAAAAMScS8AAAADCCOSSSOAAAAAAAcSCCcAA"
tFTS =  tFTS & "AAYQQcSSS8AAAAAAAMSeCcAAAA4EEeEEEeAAAAAAA8SMCeic"
tFTS =  tFTS & "AADCCOSSS3AAAAEAAGEEEOAAAAIAAMIIIIIHAADCC6KOS3AA"
tFTS =  tFTS & "AAHEEEEEEfAAAAAAAPVVVVAAAAAAAPSSS3AAAAAAAMSSSMAA"
tFTS =  tFTS & "AAAAAPSSSOCHAAAAAcSSScQ4AAAAAbGCCHAAAAAAAeCMQeAA"
tFTS =  tFTS & "AAAEEOEEEYAAAAAAAbSSS8AAAAAAA3SKMEAAAAAAAVVOKKAA"
tFTS =  tFTS & "AAAAAbKEKbAAAAAAA3SKMEEDAAAAAeIEEeAAAYIIIEIIIIYA"
tFTS =  tFTS & "IIIIIIIIIIIIAGEEEIEEEEGAClYAAAAAAAAAAAAAAAAAAAAA"
 ReDim uFTS(1151)
 For tI = 0 To 1151
 uFTS(tI) = tDCT(Asc(Mid(tFTS,tI + 1, 1)))
 Next
End Sub
Function WPGet(pL, pY)
 tSl = Len(uSt)
 tSi = (pL \ 6) Mod tSl
 tX = pL Mod 6
 tCd = Asc(Mid(uSt, tSi + 1, 1)) - 32
 tBa = tCd * 72
 tBi = pY * 6 + tX + tBa
 tBy = tBi \ 6 : tBp = tBi Mod 6
 tBm = 2 ^ tBp
 WPGet = CBool(uFTS(tBy) And tBm) And 1
End Function
Sub Web_TimeLoop()
 uSi = (uSi + 1) Mod Len(uSt) * 6
 tSize = 20
 tWC = 10 : tWH = 12 : tWW = 6
 tVW = (tWC * tWW)
 ValuesMove uR, uG, uB, uOR, uOG, uOB
 If uR = uOR And uB = uOB And uG = uOG Then 
 uOR = Int(Rnd * 16) + 16
 uOG = Int(Rnd * 16) + 16
 uOB = Int(Rnd * 16) + 16
 End If
 For tI = 0 To uElm_Len
 tX = tI Mod tVW
 tZ = tI \ tVW : tA = tX * 360 / tVW
 tR = tX * 10 / tVW
 tRY = tR * Sin(Radian(tA))
 If Not tX = (tVW - 1) Then
 tPi = tZ * tVW + tX + 1 
 uSP_cr(tI) = uSP_cr(tPi) : uSP_cg(tI) = uSP_cg(tPi) : uSP_cb(tI) = uSP_cb(tPi)
 Else
 uSP_cr(tI) = uR * 8 : uSP_cg(tI) = uG * 8 : uSP_cb(tI) = uB * 8
 End If
 uLg(tI) = 1 - WPGet(tX + uSi, tZ) * 0.7
 Next
 ELM_Show uElm, uV_Pix_x, uV_Pix_y, uV_Pix_z, uD_Pix_s, uSP_cr, uSP_cg, uSP_cb, uLg, uWeb_FontSize
 uWeb_Tv = window.setTimeout("Web_TimeLoop", uWeb_Tw)
End Sub
Sub ValuesMove(pA, pB, pC, pOA, pOB, pOC)
 ValueMove pA, pOA
 ValueMove pB, pOB
 ValueMove pC, pOC
End Sub
Sub ValueMove(pV, pVo)
 If pV < pVo Then pV = pV + 1
 If pV > pVo Then pV = pV - 1
End Sub
Sub ELM_Show(pEl(), pVx(), pVy(), pVz(), pVs(), pSr(), pSg(), pSb(), pLg(), pFs)
 tEn = UBound(pEl)
 For tEi = 0 To tEn
 With uElm(tEi).style
 .left = pVx(tEi)
 .top = pVy(tEi)
 .zindex = pVz(tEi) + 100
 .backgroundcolor = rgb(pSr(tEi) * pLg(tEi), pSg(tEi) * pLg(tEi), pSb(tEi) * pLg(tEi))
 .width = pVs(tEi) * pFs & "px"
 .height = .width
 End With
 Next 
End Sub
Function ELM_Create(pEn)
 ReDim tElms(pEn)
 For tEi = 0 To pEn
 With document
 Set tElms(tEi) = .createElement("DIV")
 .body.insertAdjacentElement "beForeEnd", tElms(tEi)
 End With
 With tElms(tEi).style
 .position = "absolute"
 .backgroundcolor = rgb(255,255,255)
 .fontsize = 0
 .width = 10
 .height = 10
 End With
 Next
 ELM_Create = tElms
End Function
Sub PXE_MTXTram3D(pPx(), pPy(), pPz(), pM(), pMr(), oPx(), oPy(), oPz())
 tPe = UBound(pPx)
 For tPi = 0 To tPe
 oPx(tPi) = pPx(tPi) * pM(0) + pPy(tPi) * pM(1) + pPz(tPi) * pM(2) + pM(3)
 oPy(tPi) = pPx(tPi) * pM(4) + pPy(tPi) * pM(5) + pPz(tPi) * pM(6) + pM(7)
 oPz(tPi) = pPx(tPi) * pM(8) + pPy(tPi) * pM(9) + pPz(tPi) * pM(10) + pM(11)
 Next
End Sub
Sub FIT_PSV(iPx, iPy, iPz, iVa, iVd, oPx, oPy, oPz, oPs)
 tPe = UBound(iPx)
 For tPi = 0 To tPe
 tZ = iPz(tPi) + iVd
 oPs(tPi) = tZ / iVd
 oPx(tPi) = iPx(tPi) * oPs(tPi)
 oPy(tPi) = iPy(tPi) * oPs(tPi)
 oPz(tPi) = iPz(tPi)
 Next
End Sub
Function Radian(pA)
 Radian = pA * 71 / 4068
End Function
</script>
</html>