返回列表 发帖

网页之文字的循环闪动特效

<script language="javascript" type="text/javascript">: z5 M% G7 {. @
<!--8 t& D4 Q6 ?' D$ n- v
// convert a single digit (0 - 16) into hex  K% U% K: z2 O9 _
function enHex(aDigit)
, h. \5 }0 S9 g" |5 y8 E{
$ ]' C$ H7 Q0 K7 {/ `4 P    return("0123456789ABCDEF".substring(aDigit, aDigit+1))
( y( o2 q0 G: {. U8 f}
* H" R  V; ^, W3 R$ h// convert a hex digit into decimal
# p+ O; A; R$ q1 ]  [2 J) M4 [function deHex(aDigit)
/ j, a! u0 P9 y. Z{' i& R2 b/ x9 C/ w" E5 S
    return("0123456789ABCDEF".indexOf(aDigit))
2 K7 G/ D1 b% [7 a: V}
: ?" H  o, c9 v7 W1 @+ i* q! F9 k7 N
// Convert a 24bit number to hex
6 ~! r4 }7 J& r9 o* z2 gfunction toHex(n)
8 _" f- P; W' V/ o7 D' j0 {{' h2 _0 @3 U  ^0 ^* s/ i1 u$ S
    return (enHex((0xf00000 & n) >> 20) +& A/ x) y- n6 o2 ?) a* y
            enHex((0x0f0000 & n) >> 16) +
) [" `' r; D2 {+ d            enHex((0x00f000 & n) >> 12) +$ Z& L* ?% v) c
            enHex((0x000f00 & n) >>  8) +
% T2 x2 h! ^+ k' I4 Y9 R            enHex((0x0000f0 & n) >>  4) +
" R/ ~! K: f1 s5 V& M7 L5 Q" `            enHex((0x00000f & n) >>  0))
" M" P8 E; F7 I8 Y% T; h}8 y! b4 j% g" u# z3 m
// Convert a six character hex to decimal
  x( [" W* K# ^4 A5 `! y4 Lfunction toDecimal(hexNum)/ M# y* E0 @" p# q$ V9 u  x) {
{
4 j& Y6 \' G5 A: ~. x           var tmp = ""+hexNum.toUpperCase()( |7 r; \9 {0 H( Z" [% f0 f: k
    while (tmp.length < 6) tmp = "0"+tmp6 {3 C/ T; ]! e5 {0 o& q
           return ((deHex(tmp.substring(0,1)) << 20) +
  j/ O; D! O, H( E3 O& I$ q: D                   (deHex(tmp.substring(1,2)) << 16) + 7 B/ {  n6 n* d+ x9 i6 M9 t" h$ h
            (deHex(tmp.substring(2,3)) << 12) +
. A" r8 x: w: x, |            (deHex(tmp.substring(3,4)) << 8) +
* d* F! t6 ]1 n9 s9 a3 d            (deHex(tmp.substring(4,5)) << 4) +8 ~6 r+ H' c  }: ?
                   (deHex(tmp.substring(5,6))))  C1 I& K$ }6 x+ P) y
}! w) G9 P+ |% O. {" ^! U( T
///////////////////Shimmering Links/////////////////////
) ~% ~1 g. p# |: [//global variables
) I- s' l" _9 cvar hoverColour- L+ Z8 t& q& a' R3 ]- L/ V
var numLinks;3 f4 K; K3 b) @" Q5 Y) S
var rate;
/ ^" m/ W( i, Q; R/ A7 D2 d/ r) Kvar numFadeLevels;0 [% ?% @+ d3 h! D0 L( ^
var bgR;
7 M$ Y4 T* `) \& G: w) E# Xvar bgG;5 O* e9 ~# P" S) M: f
var bgB;
' t6 ?) g5 Z1 w2 d2 _' Yvar currR;
% v& K/ d  J. Y$ gvar currG;: y8 Y' ^& h5 O* n
var currB;$ L8 D0 w6 C1 m! b4 H
var count;
8 X- n7 b. k9 m: E9 f4 ]" N+ X8 x6 ]var fadeOut;
( U8 u0 z6 ^) c# ?5 [var continuous;
# ?  n0 j6 i$ d3 q; }/ Rvar newColour;8 ~0 D. D: p$ g
var tID;
! t) q7 O5 c0 W# f  P( S% I6 Svar redInterval;) j* v3 }) X/ o# Y' k& W
var greenInterval;9 x7 z. F# A5 g4 N1 l6 t
var blueInterval;
1 z+ B+ o. o9 S: @) U7 L$ Nfunction initLinks(mouseOverColour, numberOfLinks, fadeOutColour): c$ h, Z1 i1 }
{
0 a4 }+ h3 f2 [* G$ H( ^        hoverColour = mouseOverColour;+ L' y6 B3 ^6 x/ S$ _* X( D" K
        numLinks = numberOfLinks;
7 Y! B9 ^+ I- D        rate = 1;
0 b# s: F. W3 Y: y6 s  J        numFadeLevels = 30;
3 E' A7 Q7 p8 ~! @- c4 l2 M( e        function initArray(theArray, length, val)
+ z( p4 `7 w7 G# }: x$ w        {; a. i, Q& _2 P8 W3 O' y9 i7 m( I
                for(i=0;i<length;i++): U2 [, b; o1 n) ?0 {
                {
- r& d* B6 F6 K$ S) c                        theArray = val;
& B) R5 b6 \9 z5 [                }
, Q: a( @. Z& Y, O        }
6 k2 c. @6 `5 Y5 u. y; S0 i& S        bgR = '0000' + fadeOutColour.substring(1,3)
9 e0 `# F  X$ |  o        bgG = '0000' + fadeOutColour.substring(3,5)8 ~& A1 ~' I3 k7 }8 f; E
        bgB = '0000' + fadeOutColour.substring(5,7)
( V$ ^9 w" D' L3 u7 f        currR = new Array(numLinks);4 z3 o! i- K, |
        currG = new Array(numLinks);- j2 ?- P! _: q2 T/ ^
        currB = new Array(numLinks);
* K% @/ V; d  Y& y        count = new Array(numLinks);
* d  I! K8 l9 q  ~- @  ?        fadeOut = new Array(numLinks);( S+ q# }$ B; j
        continuous = new Array(numLinks);
7 ~9 ^# L' F4 D. I        newColour = new Array(numLinks);
) c+ p" _9 O& _! u        tID = new Array(numLinks);7 [: v! Y9 t+ ~1 [0 n% ?+ f% R) N
        redInterval = toDecimal(bgR) / numFadeLevels;- u- U7 Z$ Z& \
        greenInterval = toDecimal(bgG) / numFadeLevels;0 q# o  c; }6 n4 j  g
        blueInterval = toDecimal(bgB) / numFadeLevels;& F, X8 T, t' j8 {
        initArray(currR,numLinks,0);: }) U+ f. U9 f9 O% a
        initArray(currG,numLinks,0);
5 E, [/ T; U2 K+ e4 u8 d4 B/ Q        initArray(currB,numLinks,0);1 H" u' Q' y4 h9 j) r( d% S
        initArray(count,numLinks,0);, U0 k* v5 j. ^1 v' U6 Q  s
        initArray(fadeOut,numLinks,true);! |: P+ b5 a/ ~' h# g& @
        initArray(continuous,numLinks,true);
: k& |4 ~" T6 f9 `}       
! g0 _" z7 O' }2 `2 J$ @1 t$ efunction startFade(id)7 X9 P, b0 l0 X: f5 b. O
{& p1 h' t# ^2 m  A3 ~
        if(fadeOut[id] == true)/ V% G$ a- ]( ^; J5 ^) J+ h
        { /*move colour towards background colour (increment)*/; A3 H& y2 d1 l3 {4 d  [% o
                currR[id] += redInterval;
+ O/ R- |' G/ k: p7 w  d% Y8 S                currG[id] += greenInterval;
% y( w9 P2 s6 n0 Q1 l0 B                currB[id] += blueInterval;9 y0 J4 Q/ O( N2 v4 d/ @$ W7 C
                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);: Y$ K' W2 Q; I' C" M* {3 H0 Q
                if(++count[id] == numFadeLevels)9 f8 M# U, p  X- g6 ~
                {: k5 t. N. E6 o* p* l
                        fadeOut[id] = false;& T8 _( y1 S; M! h0 T; e
                }
+ E; @% T( u, o' V" ?5 E+ G        }
/ w/ Z8 Y" l( B. s: |        else
, X+ G+ |' N1 ^! E; ~7 e        {/ t. }+ X' }4 ~. M8 ]  d
                currR[id] -= redInterval;
! M- w7 v: d% F, L. a6 v( |" J2 Y- M, X% b  s0 R6 c& s9 y1 w
                currG[id] -= greenInterval;
$ C+ ~/ S6 `7 V0 m/ V7 ~9 ?/ a" O) H0 Y- E- L
                currB[id] -= blueInterval;
2 E8 f7 B- C$ B( `) u1 j' x" U4 A3 e% A
                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);) }$ f- `# J7 q: f/ ~( d) d. y

+ h. _. @9 W3 m                if(--count[id] == 0)
- H2 l% f8 `; T# F
% L  x, M8 r, u& w4 [                {  V! H2 M  r1 x9 V
: r% _/ P" u8 F+ C; o, n
                        fadeOut[id] = true;
) I, s9 k1 o3 _9 k( v% H) P9 U6 F( q% j2 p" Q2 i' e/ n
                }0 G# W' r( U1 x7 F/ D% n' t' L, g
8 @/ p! U) s8 `8 d
        }
9 S& `! ]% \# d! T& I6 }$ A9 ]' L4 D4 I) Z
        if(continuous[id] == true), s3 j! o; @  J1 Y# Y
/ F& I- U' g* l; E2 L
        {
5 ^) a0 \5 e7 T( V* L
, T: L: ~- X* L( Q; s+ ]+ h. \                document.getElementById(id).style.color = newColour[id];               
& _# r+ P6 ^8 H. Q3 g$ ~* A0 z4 [  [& k+ \" Z  e( O
        }' q# c& I* P3 k5 ]

; [( V( Z: K' Z* N, Q        else
3 e' P# ?# w# v2 U
. [. p! D) I- e+ i- y/ H5 H        {! M& j3 C, p( ?+ o; w+ Q; G

* N) I7 h, v- O* T                document.getElementById(id).style.color = hoverColour;
' |5 {( `- b7 E8 p5 y; Z/ R- G& e
# D+ V  |5 M* o2 \2 u" O) \) \0 r        }
. K% x8 x9 A0 w* Z5 {  z
* \! `+ w# `" U, O/ V/ }        clearTimeout(tID[id]);
1 D7 `0 C( L- v/ Y8 W. J/ q; w# T1 l/ O: l& O# Y9 S
        tID[id]=setTimeout('startFade(' + id + ')', rate);
3 e: V2 Y9 z4 O3 I
2 Y1 g0 K* p5 `4 Q" @# d9 w* S: e}0 D0 l" l* s8 w7 f; W# b- b
5 O8 F+ \. m7 I) i( E
function continueFade(id)7 |4 ^$ r0 c- J" y% \/ r
0 q5 u; T3 b+ Z1 m4 i7 h5 r
{2 `* r2 u4 d) a; z, F! z, u
. g* K' i7 y& o/ J5 _; f" E& U
        continuous[id] = true;
8 F) C2 `3 m9 y# D, u
3 n. o: P+ M$ [' F2 X5 p}
& S" u- j. ^& T" k% u: D' L
( C+ g# }5 E% x, [/ x  rfunction stopFade(id)
4 ?7 ?/ R. M7 \& Q% A1 ]* a* H6 w! K3 w$ ~0 X/ B
{+ L6 O) f7 f+ m0 S: l' H

2 o, b. C6 v! h* }+ a: d* x" Y        continuous[id] = false;* c2 {, k+ G/ C% s3 g; ?

9 h/ }1 T- F6 s" @6 V' @}/ n0 T9 B( t' @* \8 g9 C% M' d

+ U/ h  P% D) {: j5 Bfunction StartTimers()
0 N+ X" r2 s3 X  I) R7 v7 R
' q( K) [7 p5 f( s0 ~{        //set up an initial set of timers to start the shimmering effect/ F4 t  ~; J, [% E: f  P
' y" d8 y& J2 U: F9 q
        for(id=0; id<numLinks; id++)- _! P6 c9 d  o/ M( H3 j; {
5 A1 o8 Z1 O0 L5 p
        {- e7 v+ R+ H$ ]7 N

3 J$ C% F3 S) c$ A% N# |                t=setTimeout('startFade(' + id + ')', id*100);( I: N) k4 q. t+ i5 g
  E, H! G- B# G& p
        }
% B, ]: V! j1 c% K* x7 y) `6 g0 s9 [, q9 a9 R
}1 x+ D* `  C6 B1 K# `; Z

" T/ S( ~+ B  l# v# U& X& V//format = initLinks('mouse-over colour', 'number of links', 'fade-out colour')
$ R, N8 K+ ]& \1 c' h( `) Y4 F1 N3 }# @0 K
initLinks('#FF0000', 6, '#FFCC77');% u: y6 u* I  m5 E4 L# z- M- {

7 P- u5 i( v6 ]3 P$ M/ V//-->7 R( }3 g, [7 v# b7 Q5 I

- a7 c& A( G5 ^: T" F, K: A9 u</script>7 M, c  I0 j1 b: ^# c, J& t5 W
<a class="links" id="0" onmouseover="stopFade('0');" onmouseout="continueFade('0');" href="http://7wind.com/">国际域名:58元  `& T: ?: m& [: _2 X3 g
</a>' ], G% W: S- S' X4 i3 P; Y" r
<br>
8 r( X' V+ i8 }% I3 I1 C<a class="links" id="1" onmouseover="stopFade('1');" onmouseout="continueFade('1');" href="http://7wind.net/">国内域名:110元</a>- m" r2 [  S. T/ v# j% q2 C/ c# g
<br>5 q( w9 \  Z  r  g
<a class="links" id="2" onmouseover="stopFade('2');" onmouseout="continueFade('2');" href="http://7wind.net">新一代企业信息系统</a>
3 X% \/ g. O2 A# c; [0 i$ P( ^9 D<br>       
$ W2 E# {4 c0 k& M* h<a class="links" id="3" onmouseover="stopFade('3');" onmouseout="continueFade('3');" href="http://7wind.net">新一代网络商城</a>! m) h8 {+ a/ [, u+ D8 \
<br>! Y4 L1 ]4 R+ t( e9 d
<a class="links" id="4" onmouseover="stopFade('4');" onmouseout="continueFade('4');" href="http://7wind.com/">全新的自助建站方式</a>  g" v/ F+ `/ I& @* x
<br>; u) B9 @; Y/ e% @
<a class="links" id="5" onmouseover="stopFade('5');" onmouseout="continueFade('5');" href="http://www.webdevelopersjournal.com/">全新的设计理念</a>( u2 F' i9 t6 w
<script language="javascript" type="text/javascript">
) b/ u' m0 `2 g: N' E. s<!--" ~7 f" s# t4 K' ^9 F: i
setTimeout('StartTimers()', 1000); //initial 1 second delay to allow page to load and ensure smooth shimmering4 r% `* d# I/ E
//-->
: |% Y- w$ H) V: ^</script>

返回列表
【捌玖网络】已经运行: