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

|
网页之多变的滚动字幕特效
<script language="JavaScript">
1 e3 l: c: I( A' N
0 E6 P, m' J: T; t, D<!-- ActiveASCII by Neal Kanodia (please, don't delete this line)1 _& P+ R! O, j8 `: ~8 a% {
. c: N) L. O) O* A
function createArr(num) { for(var i = 0; i < num; i++) { this = null } }
+ C# C# ]( v% J" \2 s& y" Vfunction fillArr(tx,me,ti,wa) { this.text = tx; this.method = me.toLowerCase(); this.ticks = ti; this.wait = wa }8 n4 _/ m% j" Z1 o; R$ a0 I' c# O
function block(num,txt,mthod,tcks,wit) { blocks[num] = new fillArr(txt,mthod,tcks,wit) }- Q# i U; D/ l& x3 D' S! I
function ms(unt) { var sp = ""; for( var i = 1; i <= unt; i++ ) { sp += " " } return(sp) }
1 P5 X$ A' {8 p+ jfunction 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 }$ h; K0 W( L$ G$ f. w
if (meth == "0") { document.Active.ASCII.value = end }
7 v% ~/ t0 A7 P _4 c8 t1 \if (meth == "display") { Tape = blocks[cblock].text; Wait = blocks[cblock].wait; Display() }4 g) z- P3 h0 {1 P) d, }8 m
if (meth == "display center") { Tape = blocks[cblock].text; Wait = blocks[cblock].wait; half = Tape.length / 2; DisplayC() }
# B2 k% D1 l- R$ Zif (meth == "scroll left") { clen = tlen; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; ScrollL() }+ M, a; B7 _, \9 Q( Y
if (meth == "scroll right") { clen = 0 - blocks[cblock].text.length; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; ScrollR() }
0 C; l4 B" q, t9 ]/ tif (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() }
! v% l" Q+ w' Z( I: jif (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() }) k5 |& C/ j! P: N3 I( S+ W. P
if (meth == "scroll cl") { Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; half = Tape.length / 2; clen = cent - half; ScrollCL() }0 C6 E5 B5 x% a; x- S
if (meth == "scroll cr") { Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; half = Tape.length / 2; clen = cent - half; ScrollCR() }; t" D f' W2 Q& C7 J1 P$ W$ y( j9 ^
if (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() }# \' p n- ]# r/ a$ @
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() }. z3 u q, V: e; v) X
if (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() }' j+ G5 G' r% T% F
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() }
; l' S2 m$ P1 c, D# Fif (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() }
& `3 P; P' |6 Y/ @: ]" k& d6 N+ xif (meth == "slip left") { clen = 0; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; SlipL() }
8 C! G, h, S1 D+ U! nif (meth == "slip right") { clen = 0; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; SlipR() }
; x: m; G* u$ F/ }- x6 sif (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 \' G* Q; E- ? y
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() }
8 ^) U8 w; l1 s r, @% J# Yif (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() } }, D6 D4 ~9 g4 ?& C1 K N
function Display() { document.Active.ASCII.value = Tape; cblock++; timerID = setTimeout("Activate()",Wait) }8 o; R5 `/ ~- R5 P; ?# _% n
function DisplayC() { var temp = cent - half; ini = ms(temp); document.Active.ASCII.value = ini + Tape; cblock++; timerID = setTimeout("Activate()",Wait) }) \( c3 {& o1 F7 u. ^
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) } } }
# X* N, t6 \( `/ ?0 A- z3 qfunction 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) } }1 O$ c1 b& r4 t9 r3 q" E) c. J
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) } } }
* |9 U- w# U4 U# Qfunction 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) } }9 e+ y" R4 [7 \, z
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) } } }- ^" M3 z6 ]$ c( [5 |* E' r0 i
function 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) } }2 j+ m9 w( Z/ D& ~) B) y$ R
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) } } }
5 h- ^) B! h6 Yfunction 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) } } }6 Z5 G0 W! O! O* }# m
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) } } }( ]7 K0 d- N. b H L
function 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) } } }' G: e4 s/ v" Y. U1 Q# y4 N
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) } } }. ^1 h1 V* i# J6 T! h
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) } }
. f8 Q 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) } } }
5 ?" {( G# s8 G+ L5 Afunction 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) } } }- c' c4 t6 c3 x# d
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 [9 N) A. b* h- w0 L
function 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) } }
5 @: |8 O1 {$ y& ] p% e7 N4 J
) o) _; s. e) z* h. g/////////////////////////////////////////////////////////////////* @. @0 W9 k/ c; O3 B" ^
//# User Vars
4 A8 q( G+ x1 @4 j. x, \% v// Number of blocks (see bottom) to be displayed./ d1 t/ Z/ V5 C
// ***COMMON ERROR***: Make sure to set this value according to the0 ^* E% O( ?) N; @" U- A
// number of blocks (always the last block # + 1)!4 c C0 r9 K8 }* T# V4 X# a
var max = 18; C( o3 y: T5 {! s) W
' D+ E9 X! H4 x/ J
// Don't change this!
/ `1 V& Z/ A$ F1 T5 gvar blocks = new createArr(max)
' B) w- y% \9 J; G0 [9 L4 i+ n R# B$ X. r
// Length of textbox
8 f) b' H* Z- c* y R// ***COMMON ERROR: If you change this or the length of the8 D6 s% Z6 w0 J/ i) K- `
// textbox, remember to change the other accordingly.***3 y6 o& `( w# s" M- F
var len = 50
( _% r# r B. G. C( U7 X, F
) c/ ?8 P* s& R// Number of time to loop ALL blocks (use 0 for unlimited)" D; d. u' h2 R. u, ?
var loops = 01 r# b" p0 m& `) h
6 z3 I, N, x' A! N// If you set the number of loops, set the final messege8 i. S: ?9 |" O
var end = 'End of "ActiveASCII" by Neal Kanodia.'
6 D: q( c/ J* g2 d$ j0 F( H. f8 H
% W+ G* `+ e( G// Use this format for each string (starting at 0 until 1 less! @, n; A- A. v9 y, ~3 u5 q& o
// than max):
9 T* v4 q6 k+ f' O, x! {5 c// block(#block,"Text to display","Method",#ticks,#wait)
" U5 j, i+ J6 ?8 |) o5 i/ _" h& K// example: block(0,"1st block.","Scroll Left",25,0)1 S' ~1 U' {6 j1 |1 u0 t
// ***COMMON ERROR***: If you add a block INCREASE MAX BY 1+ W0 l, m& T2 U9 @" x$ W
// ***COMMON ERROR***: If you remove a block DECREASE MAX BY 1
7 z' Z2 y% z' z' k9 W% Z' k// ***COMMON ERROR***: Check the spelling of your methods!!!; T- q' n( @( G8 @/ W; N
block(17,"欢迎光临七色风!","display",0,500)7 _# S6 B( v, U4 v) q9 x9 q- t
block(18,"新一代网络商城!","display center",0,500); z* V$ O# l/ g1 S
block(2,"新一代企业信息系统!","scroll left",25,0) f! {3 [7 _, V. p+ F
block(3,"全新的自助建站模式!","scroll right",25,0)
& m s8 r G% x# @2 eblock(4,"欢迎光临七色风!","scroll lc",25,500)4 d& X3 P9 Y- b' d6 ^
block(5,"欢迎光临!","scroll rc",25,500)7 _2 ?' C3 U7 Y& e1 m
block(6,"欢迎光临!","scroll cl",25,0)$ D3 P( M( c) A
block(7,"欢迎光临!","scroll cr",25,0)- p/ V5 O7 d; y, E. T) t5 `4 B
block(8,"欢迎光临!","slide left",25,500)
5 M$ q2 B* f/ l& [- U! sblock(9,"欢迎光临!","slide lc",25,500)
# v% l, Q1 ^) X. Oblock(10,"欢迎光临!","slide rc",25,500)
$ I" o8 G1 b5 J- n- ]' ^4 d+ f) f6 Mblock(11,"欢迎光临!","slide cl",25,0)* a" l, M5 F! f6 {
block(12,"国内域名:110元!","slide cr",25,0)' R, g7 e5 t5 D1 O8 j( I' Q3 y O
block(13,"国际域名:58元!","slip left",25,0)
; D9 k$ x. T. c- T2 B+ a: b+ O/ fblock(14,"欢迎光临中讯数据!","slip right",25,0)
$ H1 |3 i9 M7 ]8 kblock(15,"欢迎您的光临","slip letter",25,0)
9 O* o/ p6 P( Z; Eblock(16,"","display",0,500); W/ T$ \* o k( c
block(0,"欢迎欢迎!","merge",25,1000)1 g+ W1 K' M7 I: A" b- x- Z
block(1,"欢迎!","split",25,0)
; T8 u5 P3 j) x% K; g) L9 A//End User Vars2 {& ?9 u: `$ \, \, o
/////////////////////////////////////////////////////////////////
3 Y$ ~* B/ \$ W% ~; w# w4 A: k0 w) }; a. E5 ?
// Don't change!!!
' d% E8 C7 K9 f6 M# Gvar tlen = 2.4 * len
, S6 t# t$ {' o2 A' t, }var cent = tlen / 2.2
% | l2 C" j: {. s, j% j+ mvar clen = null
2 J0 h( V7 A. x0 c0 x/ Tvar tickered = null& i) L2 V5 \ l4 _, I/ g; ^& [! A0 }
var ini = null8 ? T* Y: w9 u+ B* ?- U
var iloop = 0
; j* f8 |$ k6 Q8 c7 qif (loops == 0) {iloop = 1}2 D) e0 q; k; S- {
var cblock = 0- g }0 O0 A$ `0 r
var timerID = null
% j1 D' U0 P' q k3 tvar beg = null
* @) e. y' T6 @8 o( Evar clet = null, q7 ~$ z+ O+ @0 [6 u2 c/ P
var cstr = null! P$ v& I! G8 N) H1 d
var cpos = null
: V* S* _( s4 Uvar ib = null2 j3 \" K* ^& T, A
var iba = null O. f8 V O* ]9 M' _% D" g
var fs = null
# s0 W% e0 a- X, G J+ s: `# J' {. H% }var hstr1 = null
# H+ t8 [- H6 F6 @& G6 [var hstr2 = null) M( I/ {0 ^% b8 {; Z N
<!-- end -->$ N* j! [! Z0 O# I1 v. K
* Z8 }8 s7 p! K# ~) O2 a6 x
</script>' o+ P7 N" k9 r1 n
<script language="JavaScript">
5 u2 u7 x* `1 A! w<!--
8 V8 V. R6 W t! D0 Wdocument.write('<form name="Active" onSubmit="0">')8 W! a* O. M0 [+ ~
document.write('<input type="text" name="ASCII" size="50">')
; K2 I) p/ l- D* L2 Kdocument.write('</form>')7 ?6 b5 S* F5 T% U; A% R) A
Activate()5 e; o3 C# J1 b( Z0 X6 p6 f
<!-- end -->
$ P+ `2 o, ~: |5 {- X8 {8 G3 }) I: h+ ?
</script> |
|