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

|
网页之多变的滚动字幕特效
<script language="JavaScript">
( h8 r6 C" P% |0 M8 Q
. y1 K% k7 x% A# z/ u* |7 B; n<!-- ActiveASCII by Neal Kanodia (please, don't delete this line)3 y7 [6 N& f/ D8 {8 ?
, G& ^1 }4 S$ ?4 A/ s
function createArr(num) { for(var i = 0; i < num; i++) { this = null } }& V: _+ t! j+ S# s4 M3 g2 L
function fillArr(tx,me,ti,wa) { this.text = tx; this.method = me.toLowerCase(); this.ticks = ti; this.wait = wa }
7 ?3 V$ V6 b# G7 |function block(num,txt,mthod,tcks,wit) { blocks[num] = new fillArr(txt,mthod,tcks,wit) }
- p2 D2 l; x3 jfunction ms(unt) { var sp = ""; for( var i = 1; i <= unt; i++ ) { sp += " " } return(sp) }7 n" A$ n" I1 e) Q
function 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 }
$ j" Q. O; `! a2 @$ dif (meth == "0") { document.Active.ASCII.value = end }
; V7 R$ m' c1 k' O, kif (meth == "display") { Tape = blocks[cblock].text; Wait = blocks[cblock].wait; Display() }
6 k+ [4 {8 Z% w: d6 j& n: y3 y7 C; wif (meth == "display center") { Tape = blocks[cblock].text; Wait = blocks[cblock].wait; half = Tape.length / 2; DisplayC() }" M9 x. d- _$ K1 `
if (meth == "scroll left") { clen = tlen; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; ScrollL() }( {* {/ W! L$ f5 }, e9 C
if (meth == "scroll right") { clen = 0 - blocks[cblock].text.length; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; ScrollR() }
# P8 ^7 l+ C' q) ^: g% Z8 g* G- aif (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() }
; v6 T/ L) O- F5 a3 P, uif (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() }
* O& s# y3 e9 D3 P) Nif (meth == "scroll cl") { Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; half = Tape.length / 2; clen = cent - half; ScrollCL() }
! F2 w P( o/ V' Yif (meth == "scroll cr") { Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; half = Tape.length / 2; clen = cent - half; ScrollCR() }
7 z8 M2 h. Z2 Y* `3 A; G) 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() }
" ]+ l P) F+ H) N/ ^if (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() }
) H2 _7 ~9 r+ u3 w- ^ H. i3 \) K5 Eif (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() }4 ]) q4 p9 u8 B8 \! p3 K
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() }
, z1 f E2 V( h) l; k' z5 E# D8 Uif (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() }$ x3 k9 H! Y- i( \& | ^
if (meth == "slip left") { clen = 0; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; SlipL() }
- Z& n2 D$ w" R8 Uif (meth == "slip right") { clen = 0; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; SlipR() }
1 z ?! p8 M. b, o) [6 e7 Iif (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() }6 \5 w& a1 @/ X3 S! p* w& B
if (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() }$ M* T- _+ U9 r. C7 D
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() } }- d0 K0 K. }4 O# Q4 @# O- D
function Display() { document.Active.ASCII.value = Tape; cblock++; timerID = setTimeout("Activate()",Wait) }- K; }5 J6 I3 F; V* i% x
function DisplayC() { var temp = cent - half; ini = ms(temp); document.Active.ASCII.value = ini + Tape; cblock++; timerID = setTimeout("Activate()",Wait) }
5 R- C o+ [( [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) } } }" B( }5 A) b. E* ^. L
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) } }3 S( F1 L9 k( s% U6 f, }' q
function 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 n/ j! P( [; S `2 ^# efunction 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) } }7 m3 L" }; j' g
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) } } }
7 I2 k$ E$ [) c% L3 L1 yfunction 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) } }8 }8 |+ b' Z% t: k; B9 {
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) } } }
9 ^% u) r3 H q' d% kfunction 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) } } }% ?9 h2 i/ Q( `' T9 N6 E
function 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) } } }
' Z' `2 ^) f' f- gfunction 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) } } }
. q' x9 O6 ^" K8 ~& n1 q3 |" B+ {function 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) } } }+ c3 e$ W4 K- U: c C# ]
function 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) } }
2 s, Z" v5 ^6 t* V/ d; _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) } } }( Z" c1 X) q/ l9 Z5 ~# c
function 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) } } }1 f1 f' e) r# O( G A7 u
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) } } }
2 D, N6 K% x- Q0 C8 r& b8 l# Dfunction 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) } }: ^% M* A6 T+ ~ l( x- w
0 E: }. \6 [ G
/////////////////////////////////////////////////////////////////, c/ `9 ^1 \" j, ]- d: d* k
//# User Vars
D! X4 z) q/ e$ E* x// Number of blocks (see bottom) to be displayed. l4 R1 G' M" _! P; a- ~: Y
// ***COMMON ERROR***: Make sure to set this value according to the
- y* }7 W. Q, l// number of blocks (always the last block # + 1)!' a, J! Z0 g2 d- H$ ^
var max = 18) k, z, L2 j- b
0 n) C( b! ~- f u+ ~5 t+ @9 K
// Don't change this!* _9 ^+ Y9 r1 v1 U5 q H
var blocks = new createArr(max)6 {9 S X9 ?* H
+ i0 m Q8 n) ~5 D2 W' O* u
// Length of textbox
6 c d4 j, F4 s$ P& q+ a; X// ***COMMON ERROR: If you change this or the length of the
$ \8 y/ `6 j" k// textbox, remember to change the other accordingly.***$ o3 H( P! q: V
var len = 50
- D1 E; `5 ]/ r' s) G
: X/ D* D* r2 l: o' @// Number of time to loop ALL blocks (use 0 for unlimited)
3 |) O! q% s- i9 k8 U( P# d0 `5 C% J* gvar loops = 0* Y8 d4 @ M0 o* ]. ^ I; J2 S- C
' e# s/ f2 T! n$ b3 g// If you set the number of loops, set the final messege
2 _: m( z# N& x% n: Rvar end = 'End of "ActiveASCII" by Neal Kanodia.'4 B5 H4 P" |8 A0 m- f
7 s" ^, O/ L- I, _. W, Q
// Use this format for each string (starting at 0 until 1 less6 h% b5 ?8 C0 a! o P/ O- x
// than max):
4 D: a# h% L( d: l5 p- M7 |// block(#block,"Text to display","Method",#ticks,#wait)
1 c* h! ^& ?- a, _7 X; |. F4 v// example: block(0,"1st block.","Scroll Left",25,0)
( @8 W* }1 w+ U/ b% Y s// ***COMMON ERROR***: If you add a block INCREASE MAX BY 1" K) `. \ b4 r( n
// ***COMMON ERROR***: If you remove a block DECREASE MAX BY 1" A D R `5 S) O1 e X+ B
// ***COMMON ERROR***: Check the spelling of your methods!!!
# E. J3 I6 n0 M) Z+ C( ablock(17,"欢迎光临七色风!","display",0,500)
m: }" A$ g# bblock(18,"新一代网络商城!","display center",0,500)! ^' } B0 Q+ Z$ F. `1 y
block(2,"新一代企业信息系统!","scroll left",25,0)! Y% J: [$ R" c1 m9 j
block(3,"全新的自助建站模式!","scroll right",25,0)
' M9 A) L6 i6 g" E9 K vblock(4,"欢迎光临七色风!","scroll lc",25,500)
6 n9 k ~" ~- Lblock(5,"欢迎光临!","scroll rc",25,500)
; F- p: V6 N9 {9 Z! O5 k# b6 Q5 Zblock(6,"欢迎光临!","scroll cl",25,0)- K- @: k m+ S
block(7,"欢迎光临!","scroll cr",25,0)- V' m. ?4 |: k1 y E% v0 C1 r
block(8,"欢迎光临!","slide left",25,500)
; s7 }* p& \/ w- V- Y8 R! Qblock(9,"欢迎光临!","slide lc",25,500)
2 i8 \% V0 T2 F3 \; Ublock(10,"欢迎光临!","slide rc",25,500)
+ X/ q) E+ ]& `3 o0 w8 jblock(11,"欢迎光临!","slide cl",25,0)
2 ?9 e! E5 I* ]5 \6 b. e+ n% Fblock(12,"国内域名:110元!","slide cr",25,0)! D/ s! p, n" d# {* l8 }* y: d
block(13,"国际域名:58元!","slip left",25,0)7 z+ I5 ]3 v5 H. q3 _
block(14,"欢迎光临中讯数据!","slip right",25,0)
! @0 Q8 ]9 U6 }9 |1 eblock(15,"欢迎您的光临","slip letter",25,0)# B6 s! Q' W8 F/ h C
block(16,"","display",0,500)
+ X8 o: ]6 W6 j, d- X7 b* S2 ?block(0,"欢迎欢迎!","merge",25,1000) M. D2 x: [( M) d) |# B6 c
block(1,"欢迎!","split",25,0)
( S4 s: z h0 G$ B/ l( o( W8 }//End User Vars
$ I$ p3 {- K' g8 I7 y2 |0 e5 P: o/////////////////////////////////////////////////////////////////
0 G" x- _: c: o
6 }6 t1 B) ?# p// Don't change!!!
& n5 i8 a6 T. b9 z6 t) Jvar tlen = 2.4 * len7 y+ N) Z/ q& X1 I* T0 w3 e
var cent = tlen / 2.2
% j' i/ h$ O% e9 e2 x: Y4 Evar clen = null
, @: C5 ?5 b9 E; Z7 nvar tickered = null
* z0 e1 B; M% p4 w" o; hvar ini = null
) f' Y& [* D6 M9 K+ pvar iloop = 0
; f0 _( k, U6 y* Q) t1 Vif (loops == 0) {iloop = 1}
_/ \# d7 Z! ], f) s- w% mvar cblock = 0
. u# M- q ` wvar timerID = null; c7 G8 r: r0 G( g8 i: Z
var beg = null
( \. Q1 b* Z% k, r; Zvar clet = null
2 g0 g. r- v( ?8 ovar cstr = null2 I. k1 _& j' ]7 o# U
var cpos = null& E* ^$ W( a* Z7 n
var ib = null
' A- d5 I2 K/ o/ y& a( y6 cvar iba = null" d w: L6 r4 x) a3 j& [
var fs = null
$ ]% ]1 R- n. F7 q+ f; V6 A: u' W2 ovar hstr1 = null
! _3 ]9 R" W+ z( X# f( vvar hstr2 = null
' w% q# G9 Q4 j2 U+ V& i<!-- end --># `9 |& n( ^) }1 y, ~( O: K. ~
& |) N$ A+ x3 d, e</script>
6 x V0 T* m% v: }. Y: f: a0 l<script language="JavaScript">; V: A: C! a$ r* z
<!--
: R/ a% l3 c# X2 n8 adocument.write('<form name="Active" onSubmit="0">')
, l2 N/ s" E' M5 odocument.write('<input type="text" name="ASCII" size="50">')
/ A) k5 m! j6 G5 Q- Rdocument.write('</form>')
# S2 Q! |9 U& bActivate()( N4 J s' B. e _6 w \: Y6 u
<!-- end -->, F1 B( d7 n2 T9 S i: u$ h" W+ H
7 M9 p. ?& k7 P: y. |
</script> |
|