标题:
网页之多变的滚动字幕特效
[打印本页]
作者:
zw2004
时间:
2008-1-21 20:49
标题:
网页之多变的滚动字幕特效
<script language="JavaScript">
# k. o1 E/ {5 J0 S& m
% n2 R" V2 E2 }7 _/ i- G# G
<!-- ActiveASCII by Neal Kanodia (please, don't delete this line)
% ~& B# H4 V3 |% E# _& @! P* x6 V
( Z9 M8 s3 G6 C$ I
function createArr(num) { for(var i = 0; i < num; i++) { this
= null } }
/ I5 M2 e$ ^# F( V/ o% R2 \ I
function fillArr(tx,me,ti,wa) { this.text = tx; this.method = me.toLowerCase(); this.ticks = ti; this.wait = wa }
9 C3 b4 x' A. P5 [
function block(num,txt,mthod,tcks,wit) { blocks[num] = new fillArr(txt,mthod,tcks,wit) }
# d: t/ t' D% I4 L# q; W; j
function ms(unt) { var sp = ""; for( var i = 1; i <= unt; i++ ) { sp += " " } return(sp) }
) x: ~- @8 J+ x$ V. c$ `* [
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 }
3 G- [$ h; [0 J4 T0 ?/ A
if (meth == "0") { document.Active.ASCII.value = end }
u# Y/ H: q: |+ D! v5 M9 |2 X: v
if (meth == "display") { Tape = blocks[cblock].text; Wait = blocks[cblock].wait; Display() }
4 l- G+ _! u. ~( |
if (meth == "display center") { Tape = blocks[cblock].text; Wait = blocks[cblock].wait; half = Tape.length / 2; DisplayC() }
# s7 l6 X. `6 ?) `, R( q
if (meth == "scroll left") { clen = tlen; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; ScrollL() }
! }8 S5 ^4 C, r2 V s5 T
if (meth == "scroll right") { clen = 0 - blocks[cblock].text.length; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; ScrollR() }
$ Z2 Z5 l* N% E. M3 a# f
if (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() }
{7 K) }+ N$ @5 {1 |/ ]
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() }
0 _, T8 t- u: G) }% t
if (meth == "scroll cl") { Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; half = Tape.length / 2; clen = cent - half; ScrollCL() }
# F. }! |& N$ p9 @% [
if (meth == "scroll cr") { Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; tTicks = Ticks * 2; half = Tape.length / 2; clen = cent - half; ScrollCR() }
% Z% E' J* P3 w* ~$ J. x
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() }
; X4 x- z) O# L- w4 ?1 O! @$ {
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() }
- U6 l5 G) g Q9 L
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() }
% Q. t! o+ f/ ]& y* U C8 |
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() }
" k1 j- Y7 B+ b. W& |; `4 I& l9 G
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() }
& z6 g) e/ {/ {* v
if (meth == "slip left") { clen = 0; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; SlipL() }
4 x3 t. {; k/ H' h& O& e2 B5 u8 h
if (meth == "slip right") { clen = 0; Tape = blocks[cblock].text; Ticks = blocks[cblock].ticks; SlipR() }
6 J; V1 D! z9 { W1 `8 a' t
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() }
% g" f3 O) B) V, y+ [. \* \* \* C
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 Z2 P: c# D8 q7 U: ?/ y
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() } }
2 J* P" t; `. j, s. q: r5 X
function Display() { document.Active.ASCII.value = Tape; cblock++; timerID = setTimeout("Activate()",Wait) }
, w1 X; X! A; `% r+ W7 ~0 ]; j
function DisplayC() { var temp = cent - half; ini = ms(temp); document.Active.ASCII.value = ini + Tape; cblock++; timerID = setTimeout("Activate()",Wait) }
3 o4 D9 Y% W, Q0 ^9 Y* t
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) } } }
2 ?- ~1 j- d; T( w& t& o& 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) } }
0 [8 }) s$ _1 x d0 g$ c. T# |
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) } } }
8 ?7 f. y( w9 n b! C! o* }
function 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) } }
3 ]# `( j$ z1 }& T. Q6 d3 F
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) } } }
* Q1 ?* J9 }) I1 }3 W
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) } }
" {4 z$ b+ D8 `" ?9 X9 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) } } }
0 I- s2 R4 U& |0 U3 b! G
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) } } }
, a: d+ j0 G% _7 C0 n, @$ d
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) } } }
: T9 e" R& Q8 D% M" e* U
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) } } }
5 F0 H! Q$ ^- `/ v% U& p
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) } } }
, ~6 E; H0 t" b$ C9 g
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) } }
! O8 i3 U) x% C( ]: u& F3 k0 z
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) } } }
0 I4 M2 o2 @$ l- 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) } } }
2 }8 j5 h- K. o. x0 ~5 Q$ H7 v
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) } } }
) M# @* J" \5 U: S. D% X/ ]
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) } }
$ ?! B0 J9 A2 b1 w# L$ a1 _# [3 q
# }9 F" R, t6 ?% q C; _1 \
/////////////////////////////////////////////////////////////////
# r: a# M3 f& R, g: r& _& V
//# User Vars
; _% e7 t g% p7 G
// Number of blocks (see bottom) to be displayed.
7 I6 X9 M. z+ b. j" V/ K9 y9 L1 I
// ***COMMON ERROR***: Make sure to set this value according to the
1 _* T5 d, \5 d) r( O& N& N4 D1 C
// number of blocks (always the last block # + 1)!
$ W5 c6 ~/ \5 h; d) c& j; o
var max = 18
3 k, _* F* ^3 I! Y
0 U% [$ g& N- H) l* m
// Don't change this!
. v0 `* K: K ^7 ?/ b
var blocks = new createArr(max)
% f. q- w1 ]+ Z: r Q. w
1 s" K4 f; T' i
// Length of textbox
* y6 X- o: I! _* O6 k; U
// ***COMMON ERROR: If you change this or the length of the
8 N& Z' m m+ u7 Q, R2 ^
// textbox, remember to change the other accordingly.***
# h- w1 s8 [: N1 d
var len = 50
. S# C" }- _# T6 C* ^% @* f
, E4 ?1 ]/ N8 h: `6 s- l2 Z3 d0 d
// Number of time to loop ALL blocks (use 0 for unlimited)
. a, R# f$ U1 ~, ~( K
var loops = 0
4 P2 f( \- P7 _$ G p' m
% z5 W* r7 S% F$ t: n- u8 Z' f4 }
// If you set the number of loops, set the final messege
0 A: I: h# L2 r5 H
var end = 'End of "ActiveASCII" by Neal Kanodia.'
: P# J& A+ X3 D
N- E) X1 A5 o8 S/ h! u* {6 y
// Use this format for each string (starting at 0 until 1 less
: k# W4 Y) C2 T
// than max):
* e3 J0 ]$ ]& L. n& ~3 ^- ]
// block(#block,"Text to display","Method",#ticks,#wait)
& U5 w" b8 d' Q4 `
// example: block(0,"1st block.","Scroll Left",25,0)
8 Y. S- S3 y i* {
// ***COMMON ERROR***: If you add a block INCREASE MAX BY 1
' ^3 j3 U7 d% ?8 D
// ***COMMON ERROR***: If you remove a block DECREASE MAX BY 1
( d ?. ^7 s2 E y% H
// ***COMMON ERROR***: Check the spelling of your methods!!!
* F- V2 N1 G7 V5 @6 ]" c r, w
block(17,"欢迎光临七色风!","display",0,500)
' L; f7 g, m* A: q& M6 D4 ^, L1 R
block(18,"新一代网络商城!","display center",0,500)
3 H! h) n4 ^; v9 J5 b! V
block(2,"新一代企业信息系统!","scroll left",25,0)
/ {, Y/ A- A7 D; H+ I) F) W
block(3,"全新的自助建站模式!","scroll right",25,0)
; N. s% l* c; l. \, K
block(4,"欢迎光临七色风!","scroll lc",25,500)
1 {3 [ d0 V% j6 L6 F2 }
block(5,"欢迎光临!","scroll rc",25,500)
; x5 V2 n$ w N" H6 F7 B
block(6,"欢迎光临!","scroll cl",25,0)
! H/ Q1 ]! _4 C
block(7,"欢迎光临!","scroll cr",25,0)
$ F W" d7 }& l2 W
block(8,"欢迎光临!","slide left",25,500)
% _& H7 s& g1 C D9 b P% i
block(9,"欢迎光临!","slide lc",25,500)
$ h3 B" x6 v5 P% x1 s
block(10,"欢迎光临!","slide rc",25,500)
0 {9 N: h3 ~. w1 `" ?
block(11,"欢迎光临!","slide cl",25,0)
* j! N$ a' R6 j2 o1 f
block(12,"国内域名:110元!","slide cr",25,0)
) g9 y+ c9 S+ F% l Z9 E; {
block(13,"国际域名:58元!","slip left",25,0)
4 P( x: H. R9 m$ ^! N z o# n) V
block(14,"欢迎光临中讯数据!","slip right",25,0)
4 t3 S; O0 W9 e$ [( ]
block(15,"欢迎您的光临","slip letter",25,0)
8 d2 ]' |9 g {, g
block(16,"","display",0,500)
. i8 Z* C$ q; @& ]# D
block(0,"欢迎欢迎!","merge",25,1000)
Q$ n! a$ |% L- y8 V: n1 x/ Q
block(1,"欢迎!","split",25,0)
& w4 P2 }/ v! A# |
//End User Vars
$ n4 F4 ~7 }8 `; _8 g/ C. b
/////////////////////////////////////////////////////////////////
/ ]' m2 K+ P" h) \
% m5 p* k' i) k6 s( s. k+ U! w
// Don't change!!!
* _7 `; J- w1 x2 b* s% r
var tlen = 2.4 * len
/ @; H7 U5 k) `0 u. E/ J$ f
var cent = tlen / 2.2
$ U7 M5 \8 w9 P$ \# Y
var clen = null
! R ^0 {+ n5 ]/ q
var tickered = null
u3 `( j, }! I# @
var ini = null
& f3 z* E6 p* ?% x
var iloop = 0
6 n7 i: z# F9 S5 {' E; a
if (loops == 0) {iloop = 1}
$ |) l. K; T% U" t- B1 b
var cblock = 0
% a# r* z7 T% R6 _
var timerID = null
9 `$ A. h; l# M, m* T% F# M
var beg = null
k6 w6 Y- l$ p! j% x
var clet = null
! T. g! z6 g1 O/ Q6 H) j1 G
var cstr = null
) T- T6 c) C/ q$ A5 S
var cpos = null
4 Y, z; i) P$ R- V( i+ g0 D5 q" j3 f
var ib = null
; p" K7 W5 P# i4 x
var iba = null
$ k2 u' L( ` c
var fs = null
9 R& q, A; {) U8 Q
var hstr1 = null
& R$ n# }" P) a/ m
var hstr2 = null
+ w* ~# R: O" W, S" `; w8 f& e
<!-- end -->
/ n! r% S9 h& f: Q% @4 I( U
' t j( t! c8 D( Y& u1 y
</script>
9 `& T6 m1 f% |5 i' ^5 t; u
<script language="JavaScript">
! b& N/ C1 T) T {; {( _$ m' ^
<!--
5 q$ e( R$ |; \, V
document.write('<form name="Active" onSubmit="0">')
" J- X+ e" t3 ^! p( `
document.write('<input type="text" name="ASCII" size="50">')
9 A5 K5 G& G1 ]: c5 y# l
document.write('</form>')
: T, R4 `( b$ a7 v( t
Activate()
$ v- |, t o4 Q" o* Q) ?! m! u3 p
<!-- end -->
$ n0 T# P6 L, {" N- J& X
: ?* K! i% p/ ?3 n" x) a: x
</script>
欢迎光临 捌玖网络工作室 (http://89w.org/)
Powered by Discuz! 7.2