|
  
- UID
- 133
- 帖子
- 51
- 精华
- 1
- 积分
- 186
- 金币
- 55
- 威望
- 2
- 贡献
- 0

|
网页之多变的滚动字幕特效
<script language="JavaScript">
* C& |+ _( ~0 M: q* ]4 D: r
) q- B) n3 `( I9 C* c2 k<!-- ActiveASCII by Neal Kanodia (please, don't delete this line)! q6 t9 t& i5 t# r5 X6 y
: C% n4 l7 D9 x' Y* Y+ G4 _
function createArr(num) { for(var i = 0; i < num; i++) { this = null } }
2 h9 H' t8 W& S3 |function fillArr(tx,me,ti,wa) { this.text = tx; this.method = me.toLowerCase(); this.ticks = ti; this.wait = wa }7 F; _' b5 K# A, ~ o
function block(num,txt,mthod,tcks,wit) { blocks[num] = new fillArr(txt,mthod,tcks,wit) }
* T5 C( H/ Q9 g6 afunction ms(unt) { var sp = ""; for( var i = 1; i <= unt; i++ ) { sp += " " } return(sp) }
* _: A& L2 `7 I$ afunction Activate() { if (cblock == max) { cblock = 0; if (iloop == 0) { loops--; if (loops == 0) { meth = "0" } else { meth = blocks[cblock].method } } else { meth = blocks[cblock].method } } else { meth = blocks[cblock].method }
" ~* t {- V6 n Lif (meth == "0") { document.Active.ASCII.value = end }
1 M( R0 t) U& h& @if (meth == "display") { Tape = blocks[cblock].text; Wait = blocks[cblock].wait; Display() }
8 K Z4 B$ s @# d3 fif (meth == "display center") { Tape = blocks[cblock].text; Wait = blocks[cblock].wait; half = Tape.length / 2; DisplayC() }( P" O1 D8 D, A5 E1 }! Q1 K
if (meth == "scroll left") { clen = tlen; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; ScrollL() }
- f' x% \& S2 r$ _if (meth == "scroll right") { clen = 0 - blocks[cblock].text.length; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; ScrollR() }
' p* I; K) p0 _& s+ d9 bif (meth == "scroll lc") { clen = 0 - blocks[cblock].text.length; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; Wait = blocks[cblock].wait; tTicks = Ticks * 2; half = Tape.length / 2; ScrollLC() }
/ P) W% x; s2 L2 d. J* S7 \if (meth == "scroll rc") { clen = tlen; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; Wait = blocks[cblock].wait; tTicks = Ticks * 2; half = Tape.length / 2; ScrollRC() }8 x1 J8 o% b% r$ Z
if (meth == "scroll cl") { Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; half = Tape.length / 2; clen = cent - half; ScrollCL() }
d9 M3 b) d- r+ e6 _if (meth == "scroll cr") { Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; half = Tape.length / 2; clen = cent - half; ScrollCR() }
$ M& R, f5 L' Lif (meth == "slide left") { Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; Wait = blocks[cblock].wait; cpos = 0; clet = Tape.charAt(cpos); clen = tlen; cstr = ""; SlideL() }
" q" j4 `0 @8 c! D- uif (meth == "slide lc") { Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; Wait = blocks[cblock].wait; cpos = Tape.length - 1; clet = Tape.charAt(cpos); clen = 0; cstr = ""; half = Tape.length / 2; iba = cent - half; ib = ms(iba); SlideLC() }
9 a8 `4 i4 u1 n# N- Sif (meth == "slide rc") { Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; Wait = blocks[cblock].wait; cpos = 0; clet = Tape.charAt(cpos); cstr = ""; half = Tape.length / 2; clen = cent + half; fs = ms(cent - half); SlideRC() }6 T1 H# ^5 j% w2 f# V" r8 N% n
if (meth == "slide cl") { Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; cpos = 0; clet = Tape.charAt(cpos); cstr = Tape.substring(1,Tape.length); half = Tape.length / 2; clen = cent - half; iba = 0; ib = ms(iba); SlideCL() }7 ]& X) u( K& V
if (meth == "slide cr") { Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; cpos = Tape.length - 1; clet = Tape.charAt(cpos); cstr = Tape.substring(0,Tape.length - 1); half = Tape.length / 2; clen = 0; fs = ms(cent - half); SlideCR() }
- l9 m7 M% ]6 O+ |if (meth == "slip left") { clen = 0; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; SlipL() }
4 w$ k/ ^/ O, Iif (meth == "slip right") { clen = 0; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; SlipR() }
/ G% g" n2 _' K1 g8 [if (meth == "slip letter") { Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; cpos = Tape.length - 1; clet = Tape.charAt(cpos); cstr = Tape.substring(0,Tape.length - 1); clen = 0; SlipLet() }
- M$ ?& [: I$ o$ c' [0 `- zif (meth == "split"){ Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; var iii = Tape.length / 2; if (iii / 2 != Math.ceil(iii / 2)) { Tape = Tape + " " } hstr1 = Tape.substring(0,Tape.length/2); hstr2 = Tape.substring(Tape.length/2,Tape.length); tTicks = Ticks * 2; clen = cent - hstr1.length; iba = 0; ib = ms(iba); Split() }" b- n% C) a( P- q2 |) r6 B+ w
if (meth == "merge"){ Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; var iii = Tape.length / 2; if (iii / 2 != Math.ceil(iii / 2)) { Tape = Tape + " " } hstr1 = Tape.substring(0,Tape.length/2); hstr2 = Tape.substring(Tape.length/2,Tape.length); tTicks = Ticks * 2; clen = 0 - hstr1.length; iba = tlen; ib = ms(iba); Wait = blocks[cblock].wait; Merge() } }
7 E" l5 B- j+ w/ J6 A- G4 z2 p3 ?function Display() { document.Active.ASCII.value = Tape; cblock++; timerID = setTimeout("Activate()",Wait) }
, f) L2 C" ]* A2 B, v. rfunction DisplayC() { var temp = cent - half; ini = ms(temp); document.Active.ASCII.value = ini + Tape; cblock++; timerID = setTimeout("Activate()",Wait) }+ W, d" Q- k7 T- h9 c/ ]
function ScrollL() { if (clen >= 0) { ini = ms(clen); tickered = ini + Tape; document.Active.ASCII.value = tickered; clen--; timerID = setTimeout("ScrollL()",Ticks) } else { beg = 0 - clen; if (beg == Tape.length) { document.Active.ASCII.value = ""; cblock++; timerID = setTimeout("Activate()",Ticks) } else { tickered = Tape.substring(beg,tlen); document.Active.ASCII.value = tickered; clen--; timerID = setTimeout("ScrollL()",tTicks) } } }$ O+ O! b: |0 Y
function ScrollR() { if (clen >= 0) { if (clen > tlen) { document.Active.ASCII.value = ""; cblock++; timerID = setTimeout("Activate()",Ticks) } else { ini = ms(clen); tickered = ini + Tape; document.Active.ASCII.value = tickered; clen++; timerID = setTimeout("ScrollR()",Ticks) } } else { beg = 0 - clen; tickered = Tape.substring(beg,tlen); document.Active.ASCII.value = tickered; clen++; timerID = setTimeout("ScrollR()",tTicks) } }
/ T- v4 a8 U5 D5 rfunction ScrollLC() { if (clen >= 0) { if (cent <= (clen + half)) { cblock++; timerID = setTimeout("Activate()",Wait) } else { ini = ms(clen); tickered = ini + Tape; document.Active.ASCII.value = tickered; clen++; timerID = setTimeout("ScrollLC()",Ticks) } } else { beg = 0 - clen; if (cent <= (clen + half)) { cblock++; timerID = setTimeout("Activate()",Wait) } else { tickered = Tape.substring(beg,tlen); document.Active.ASCII.value = tickered; clen++; timerID = setTimeout("ScrollLC()",tTicks) } } }
0 M& H; ?. R, C1 Zfunction ScrollRC() { if (clen >= 0) { if (cent >= (clen + half)) { cblock++; timerID = setTimeout("Activate()",Wait) } else { ini = ms(clen); tickered = ini + Tape; document.Active.ASCII.value = tickered; clen--; timerID = setTimeout("ScrollRC()",Ticks) } } else { beg = 0 - clen; if (cent >= (clen + half)) { cblock++; timerID = setTimeout("Activate()",Wait) } tickered = Tape.substring(beg,tlen); document.Active.ASCII.value = tickered; clen--; timerID = setTimeout("ScrollRC()",tTicks) } }& F; R+ x6 Y' z- G f( K7 R
function ScrollCL() { if (clen >= 0) { ini = ms(clen); tickered = ini + Tape; document.Active.ASCII.value = tickered; clen--; timerID = setTimeout("ScrollCL()",Ticks) } else { beg = 0 - clen; if (beg >= Tape.length) { document.Active.ASCII.value = ""; cblock++; timerID = setTimeout("Activate()",Wait) } else { tickered = Tape.substring(beg,tlen); document.Active.ASCII.value = tickered; clen--; timerID = setTimeout("ScrollCL()",tTicks) } } }
/ b& |! F, {2 [* |* v# O qfunction ScrollCR() { if (clen >= 0) { if (clen > tlen) { document.Active.ASCII.value = ""; cblock++; timerID = setTimeout("Activate()",Wait) } else { ini = ms(clen); tickered = ini + Tape; document.Active.ASCII.value = tickered; clen++; timerID = setTimeout("ScrollCR()",Ticks) } } else { beg = 0 - clen; tickered = Tape.substring(beg,tlen); document.Active.ASCII.value = tickered; clen++; timerID = setTimeout("ScrollCR()",tTicks) } }* L9 H; s f7 n5 x+ U9 t5 P
function SlideL() { if (clen >= 0) { ini = ms(clen); tickered = cstr + ini + clet; document.Active.ASCII.value = tickered; clen -= 3; timerID = setTimeout("SlideL()",Ticks) } else { document.Active.ASCII.value = cstr + clet; cstr = document.Active.ASCII.value; clen = tlen - cstr.length; cpos++; clet = Tape.charAt(cpos); if (clet == " ") { cstr = cstr + " "; cpos++; clet = Tape.charAt(cpos) } if (clet == "") { cblock++; timerID = setTimeout("Activate()",Wait) } else { timerID = setTimeout("SlideL()",Ticks) } } }, A- m3 x& H9 b+ S
function SlideLC() { if (clen <= cent - half) { ini = ms(clen); tickered = ini + clet + ib + cstr; document.Active.ASCII.value = tickered; clen += 3; iba -= 3; ib = ms(iba); timerID = setTimeout("SlideLC()",Ticks) } else { iba = cent - half; ini = ms(iba); ib = ms(iba); document.Active.ASCII.value = ini + clet + cstr; cstr = clet + cstr; clen = 0; cpos--; if (cpos >= 0) { clet = Tape.charAt(cpos); if (clet == " ") { cstr = " " + cstr; cpos--; clet = Tape.charAt(cpos) } timerID = setTimeout("SlideLC()",Ticks) } else { cblock++; timerID = setTimeout("Activate()",Wait) } } }
8 W; f6 f) X' a. G. g: Z5 y- dfunction SlideRC() { if (clen >= 0) { ini = ms(clen); tickered = fs + cstr + ini + clet; document.Active.ASCII.value = tickered; clen -= 3; timerID = setTimeout("SlideRC()",Ticks) } else { clen = cent + half; cstr += clet; document.Active.ASCII.value = fs + cstr; cpos++; clet = Tape.charAt(cpos); if (clet == " ") { cstr = cstr + " "; cpos++; clet = Tape.charAt(cpos) } if (clet == "") { document.Active.ASCII.value = fs + Tape; cblock++; timerID = setTimeout("Activate()",Wait) } else { timerID = setTimeout("SlideRC()",Ticks) } } }
2 g+ x7 [" b/ N4 ifunction SlideCL() { if (clen > 0) { ini = ms(clen); tickered = ini + clet + ib + cstr; document.Active.ASCII.value = tickered; clen -= 3; iba += 3; ib = ms(iba); timerID = setTimeout("SlideCL()",Ticks) } else { iba = 0; ib = ms(iba); clen = cent - half; ini = ms(clen); document.Active.ASCII.value = ini + cstr; cstr = cstr.substring(1,Tape.length); cpos++; clet = Tape.charAt(cpos); if (clet == " ") { cstr = cstr.substring(1,Tape.length); cpos++; clet = Tape.charAt(cpos) } if (clet == "") { document.Active.ASCII.value = ""; cblock++; timerID = setTimeout("Activate()",Ticks) } else { timerID = setTimeout("SlideCL()",Ticks) } } }
# X3 f. G2 b& F5 ]+ z; Yfunction SlideCR() { if (clen <= cent + half) { ini = ms(clen); tickered = fs + cstr + ini + clet; document.Active.ASCII.value = tickered; clen += 3; timerID = setTimeout("SlideCR()",Ticks) } else { clen = 0; document.Active.ASCII.value = fs + cstr; cstr = cstr.substring(0,cstr.length - 1); cpos--; half += 1; if (cpos >= 0) { ; clet = Tape.charAt(cpos); if (clet == " ") { cstr = cstr.substring(0,cstr.length - 1); cpos--; clet = Tape.charAt(cpos) } timerID = setTimeout("SlideCR()",Ticks) } else { cblock++; timerID = setTimeout("Activate()",Ticks) } } }
( J6 ]6 g4 H- sfunction SlipR() { if (clen >= 0) { if (clen > tlen) { document.Active.ASCII.value = ""; cblock++; timerID = setTimeout("Activate()",Ticks) } else { ini = ms(clen); tickered = ini + Tape; document.Active.ASCII.value = tickered; clen++; timerID = setTimeout("SlipR()",Ticks) } } else { beg = 0 - clen; tickered = Tape.substring(beg,tlen); document.Active.ASCII.value = tickered; clen++; timerID = setTimeout("SlipR()",Ticks) } }/ _0 U3 Y" n( j
function SlipL() { if (clen >= 0) { ini = ms(clen); tickered = ini + Tape; document.Active.ASCII.value = tickered; clen--; timerID = setTimeout("SlipL()",Ticks) } else { beg = 0 - clen; if (beg == Tape.length) { document.Active.ASCII.value = ""; cblock++; timerID = setTimeout("Activate()",Ticks) } else { tickered = Tape.substring(beg,tlen); document.Active.ASCII.value = tickered; clen--; timerID = setTimeout("SlipL()",Ticks) } } }
& Y/ ]. W3 Z$ O3 Y( K6 z* Dfunction SlipLet() { if (clen < tlen) { ini = ms(clen); tickered = cstr + ini + clet; document.Active.ASCII.value = tickered; clen += 3; timerID = setTimeout("SlipLet()",Ticks) } else { clen = 0; cstr = cstr.substring(0,cstr.length - 1); cpos--; if (cpos >= 0) { ; clet = Tape.charAt(cpos); if (clet == " ") { cstr = cstr.substring(0,cstr.length - 1); cpos--; clet = Tape.charAt(cpos) } timerID = setTimeout("SlipLet()",Ticks) } else { cblock++; timerID = setTimeout("Activate()",Ticks) } } }
8 ~; j" C4 k9 ?function Split() { if (clen >= 0) { ini = ms(clen); tickered = ini + hstr1 + ib + hstr2; document.Active.ASCII.value = tickered; clen--; iba += 2; ib = ms(iba); timerID = setTimeout("Split()",Ticks) } else { if (clen <= 0 - hstr1.length) { cblock++; timerID = setTimeout("Activate()",Ticks) } else { beg = 0 - clen; tickered = hstr1.substring(beg,tlen); document.Active.ASCII.value = tickered + ib + hstr2; clen--; iba += 2; ib = ms(iba); timerID = setTimeout("Split()",tTicks) } } }
0 T* p' ]1 I l( I3 g) xfunction Merge() { if (clen >= 0) { if (clen > cent - hstr1.length) { tickered = ini + hstr1 + hstr2; document.Active.ASCII.value = tickered; cblock++; timerID = setTimeout("Activate()",Wait) } else { ini = ms(clen); tickered = ini + hstr1 + ib + hstr2; document.Active.ASCII.value = tickered; clen++; iba -= 2; ib = ms(iba); timerID = setTimeout("Merge()",Ticks) } } else { beg = 0 - clen; tickered = hstr1.substring(beg,tlen); document.Active.ASCII.value = tickered + ib + hstr2; clen++; iba -= 4; ib = ms(iba); timerID = setTimeout("Merge()",tTicks) } }
3 w* i& K: W% i& s: Q) ^
; a/ @$ M9 @. u: T5 }" o' S1 o% K/////////////////////////////////////////////////////////////////
5 ?" \- G; z% e+ c//# User Vars1 P+ O+ D) r- I8 h" _
// Number of blocks (see bottom) to be displayed.
5 x2 R3 O, X0 i2 u// ***COMMON ERROR***: Make sure to set this value according to the
# T+ B" V; B& u# a w. Q S// number of blocks (always the last block # + 1)!
' c/ _* @2 d: P8 Ivar max = 18; C' g2 k) q) R4 B2 }7 l8 Z
% n; g" H. r; `// Don't change this! L) d( t; I- }+ p, G
var blocks = new createArr(max)3 [2 t2 U6 g* V6 e! R# W
7 {; v* J0 t* R( Q- W
// Length of textbox
9 t5 Z' f& ~) H! ?" E0 f1 h( E// ***COMMON ERROR: If you change this or the length of the
' g/ i/ z) @3 I9 p' {" b, H3 x// textbox, remember to change the other accordingly.***
$ _$ y2 \; x2 s. l- p% rvar len = 50+ \. X" q# n* s! J
' ~% V0 r7 l$ z
// Number of time to loop ALL blocks (use 0 for unlimited), A. B9 B4 Q5 V% A
var loops = 0, b$ z4 Y7 z, q* m3 N
( f: T" k3 m# {
// If you set the number of loops, set the final messege
% q2 C7 r+ ^' E$ t2 gvar end = 'End of "ActiveASCII" by Neal Kanodia.'
, y) W3 L4 I+ d! m% i, w# @% n
; X( I0 I/ P- d3 {// Use this format for each string (starting at 0 until 1 less5 i. |- G5 {$ m
// than max):/ r- ~7 W6 t3 \, `% f
// block(#block,"Text to display","Method",#ticks,#wait) [4 {: C+ B0 c l
// example: block(0,"1st block.","Scroll Left",25,0)3 @ w7 U7 l6 L; X& S* f
// ***COMMON ERROR***: If you add a block INCREASE MAX BY 1
) v: s( u, }! z4 \// ***COMMON ERROR***: If you remove a block DECREASE MAX BY 1
7 V6 T' B( Z( S// ***COMMON ERROR***: Check the spelling of your methods!!!+ R. v' P+ y& H' \9 ], M0 L
block(17,"欢迎光临七色风!","display",0,500)
( F/ ~4 f+ |4 T) [+ v" E1 Nblock(18,"新一代网络商城!","display center",0,500). X5 \" m2 ?0 E. q8 {
block(2,"新一代企业信息系统!","scroll left",25,0)7 j! Z" B3 j7 Q% o( o
block(3,"全新的自助建站模式!","scroll right",25,0)
) O* |) t+ Z* C& p/ Q2 Kblock(4,"欢迎光临七色风!","scroll lc",25,500)
- y" p* z! @+ z8 ~$ ?block(5,"欢迎光临!","scroll rc",25,500)
. @7 e* F- i2 [, @3 h. Kblock(6,"欢迎光临!","scroll cl",25,0)
5 ?% {) X/ [, c% y; Ublock(7,"欢迎光临!","scroll cr",25,0)
; M) O( {4 e- ^1 {- eblock(8,"欢迎光临!","slide left",25,500)
! `5 ?# i6 d+ R. u/ r3 Tblock(9,"欢迎光临!","slide lc",25,500)
5 c7 N+ N, I5 tblock(10,"欢迎光临!","slide rc",25,500)% i) e8 |# [- n) e/ U2 G1 c
block(11,"欢迎光临!","slide cl",25,0)
& B( ?4 K3 h" Z$ _# oblock(12,"国内域名:110元!","slide cr",25,0). w/ o P3 e* ]1 F" F3 t
block(13,"国际域名:58元!","slip left",25,0)
+ h# b# O/ X; s3 h M7 F1 `block(14,"欢迎光临中讯数据!","slip right",25,0)
, g$ S: D" o8 d1 t8 I2 tblock(15,"欢迎您的光临","slip letter",25,0); Y8 ` V$ x- ~7 _
block(16,"","display",0,500)$ v" q/ M! P. r1 b. g: S
block(0,"欢迎欢迎!","merge",25,1000): P' R L' _5 o, N
block(1,"欢迎!","split",25,0)
0 ~( N5 X* v% F. c: S//End User Vars
5 `0 q1 W) B' b9 U/////////////////////////////////////////////////////////////////
1 ?) T5 [ ~6 F+ Z2 l$ q# I$ {8 @; B- d4 V) n- U' @
// Don't change!!!
% O& N8 t! S% w; c1 a; K. Avar tlen = 2.4 * len7 c3 O2 q- @0 b' ?; j) b# M$ p; W0 L4 g$ }
var cent = tlen / 2.2- L. i: l" m! a+ G
var clen = null7 v6 }( _5 X3 {" N6 E/ N
var tickered = null, `8 ~, F" a; O9 L4 m8 W
var ini = null, q' o- T) x* n0 O: V
var iloop = 0
1 y6 ]2 h! `0 I9 P' R( L8 sif (loops == 0) {iloop = 1}
; {) b# s* I8 y4 }: Y) J, @& Hvar cblock = 0: z7 y& \( I8 o
var timerID = null
# i& u" A% A0 h2 P. c8 lvar beg = null
- d' v) t. p4 Cvar clet = null2 o' f) D. @" B
var cstr = null
& _- n- P$ i. N7 kvar cpos = null0 [; G+ r2 O3 x" I: R4 {5 c
var ib = null
7 i$ x7 N0 k) h, hvar iba = null9 S2 \9 I! [, c# p( T% B
var fs = null( d. ^. W; n7 |# H
var hstr1 = null8 P/ y2 i. `5 w; i' n
var hstr2 = null2 z& Z) T7 l/ d
<!-- end -->7 L8 O% Q' G7 a# e6 r
; m1 X' B* S$ @5 w$ |6 Q</script>/ W- w+ M) q9 H5 a% m8 o+ }6 B
<script language="JavaScript">
! ?) h7 P+ [# x' ~" K8 J, _<!-- ( p* u! a1 q1 y9 H
document.write('<form name="Active" onSubmit="0">')1 ?1 k7 v+ k5 U# g
document.write('<input type="text" name="ASCII" size="50">')- o2 `3 J- Z$ C# F
document.write('</form>')
8 e8 d+ x( k2 F7 ZActivate()! M a2 k" V" c/ W9 R- _
<!-- end -->& [+ A' `* ]* Y+ t0 q
Y4 h2 n6 S- I# R5 X4 _0 B
</script> |
|