获得本站免费赞助空间请点这里
返回列表 发帖

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

<script language="javascript" type="text/javascript">
' ?9 ^9 I" |& x- T<!--
. O: w, o- r; D* t- H1 ]// convert a single digit (0 - 16) into hex# m/ I3 i+ k( I6 I  C7 X
function enHex(aDigit). b  \* H( a" ^6 d" G; d2 O( c1 @
{
5 C" e$ e: c6 o+ a4 ]4 o. ~    return("0123456789ABCDEF".substring(aDigit, aDigit+1))
6 f, i9 i- F1 U2 f3 w7 i3 b' Q}0 n$ ?4 L" v5 d
// convert a hex digit into decimal, }2 s4 L, T- l
function deHex(aDigit)
8 h' H* r' A) C0 B9 g; g. z{
8 b2 Q/ {% O/ O5 e& A. X) E; e5 y    return("0123456789ABCDEF".indexOf(aDigit))
5 P6 X& J7 D: K% E/ k4 O}" c7 f! Y. M, W8 u- `6 d+ Q
1 \# `  a$ V0 i; a2 _
// Convert a 24bit number to hex/ J' I/ d/ I' T
function toHex(n)! o6 ?+ k# f" n
{
/ D' B/ Z# n+ }    return (enHex((0xf00000 & n) >> 20) +
2 J+ ^: [% D% r% b            enHex((0x0f0000 & n) >> 16) +
' {) o9 ?& W% d- u% [$ K            enHex((0x00f000 & n) >> 12) +/ i) w2 D) {8 V8 L; ~) N: ~- k
            enHex((0x000f00 & n) >>  8) +" y7 ]7 a6 ^( M: e( A% k+ Y/ ^
            enHex((0x0000f0 & n) >>  4) +
% m4 ^( f# d6 [            enHex((0x00000f & n) >>  0))
+ S. W. _* e$ c% m+ S}
" H+ V2 z1 K) \$ i. h. @( U6 y// Convert a six character hex to decimal
( z5 x( N/ p. n0 Y" zfunction toDecimal(hexNum)+ n* v& W+ n. d
{4 z/ S+ S8 k6 o' a7 H6 H
           var tmp = ""+hexNum.toUpperCase()
! g& r0 J+ L5 G( `$ y3 O" d    while (tmp.length < 6) tmp = "0"+tmp
' @7 b3 B6 w* u           return ((deHex(tmp.substring(0,1)) << 20) +
1 l8 v! D7 u- `0 `) R' c4 k                   (deHex(tmp.substring(1,2)) << 16) + ; I% }' J3 d/ t5 D
            (deHex(tmp.substring(2,3)) << 12) +8 X+ p# i3 W& c4 S; `1 O- x
            (deHex(tmp.substring(3,4)) << 8) +
* [. Y6 ]0 V" L$ d/ ~5 @# w8 I            (deHex(tmp.substring(4,5)) << 4) +) e% ]- d  a9 E* |5 Y
                   (deHex(tmp.substring(5,6))))
) K6 v; I  u1 Q7 N' r}/ M8 `( K0 m* Y' z& g% E$ M' t/ y8 u
///////////////////Shimmering Links/////////////////////
+ k  F$ a+ A* F( o3 H//global variables
3 Q" u6 Y' X, Lvar hoverColour! \/ z6 V) p8 l) s. L: X
var numLinks;. R* b) B) |+ M: y0 H9 p7 S
var rate;
7 C( [% ?4 f! ^; `1 K5 a) Qvar numFadeLevels;
0 U2 H- y9 J5 X/ p, W8 m1 zvar bgR;
9 ~6 {2 v# P/ T: n) c4 q& O5 mvar bgG;
' P- @/ p$ k/ A6 r7 J/ Bvar bgB;
1 G5 f: {1 s8 }7 a" l" O5 z) nvar currR;
. j8 w" R' x9 z  Vvar currG;$ S4 D  ?0 i3 E4 _
var currB;% G$ }+ U$ P. }
var count;: x# K( n. ?- d1 P8 Y& p0 U( x
var fadeOut;
' c! L" `& [: z% ?5 @" mvar continuous;7 d7 Q. |' k3 B, G1 F
var newColour;! v, k% u, Z3 h' {
var tID;
+ u" Z- [* A7 ~4 v8 D1 ?, gvar redInterval;' i9 G5 R  g( B
var greenInterval;0 A+ C" \3 E1 w" @; |/ B% S
var blueInterval;# `. B! o' D( z! h8 `! r4 @
function initLinks(mouseOverColour, numberOfLinks, fadeOutColour)
! F  J% D" I# p+ _2 n2 R; ~{
5 {9 z% _$ g7 i( |* u        hoverColour = mouseOverColour;
! B! p* J- y& [& x        numLinks = numberOfLinks;+ j7 z. C9 z" x* r/ L
        rate = 1;) a  W$ C# o7 l; V" x; z
        numFadeLevels = 30;& F6 ^4 G% m+ e& y! s0 P) \
        function initArray(theArray, length, val)
/ `- B& C7 E1 s# |2 ]4 f        {2 Y  E+ e! h# I( ^2 x( e8 m
                for(i=0;i<length;i++)
, @" Y: j* p4 N7 K. i                {: X; V; F! A  o, M; K8 P0 C- b% X( L
                        theArray = val;
! S5 y% _, e- }  J                }; o7 _& k; L( K; a  M0 t* _3 r
        }
  M3 _! i# e, y' H  s+ X; E        bgR = '0000' + fadeOutColour.substring(1,3)( P" k" A2 z, F+ R% L& n9 ~2 W
        bgG = '0000' + fadeOutColour.substring(3,5)
8 s9 T9 F/ i8 ?. [" l        bgB = '0000' + fadeOutColour.substring(5,7)/ @9 V% y; n& u9 I" ]( W
        currR = new Array(numLinks);
# ]* C" t- I$ R/ L5 p& E        currG = new Array(numLinks);. D6 T" w) r# Q) }* e) N5 S
        currB = new Array(numLinks);. L/ l; ]; |* P/ d
        count = new Array(numLinks);
, P: g( }& D) @$ h3 n; L% L; R( _        fadeOut = new Array(numLinks);
: y; r  {" j( L4 Q0 Q+ C6 U* g        continuous = new Array(numLinks);- U/ r8 G3 l/ P. G8 F, {
        newColour = new Array(numLinks);
( H6 h/ M& Q! `+ ]" [. _  I0 O        tID = new Array(numLinks);* K3 @7 h( P2 Y, Q+ e+ J1 p% P
        redInterval = toDecimal(bgR) / numFadeLevels;) r: V# j9 y1 s* s) i* B# P' s
        greenInterval = toDecimal(bgG) / numFadeLevels;
# s0 R/ u+ M, \2 ?9 F9 J; R' K        blueInterval = toDecimal(bgB) / numFadeLevels;
9 {5 ^6 Q( M  A0 }2 O. u        initArray(currR,numLinks,0);
( N- [3 ~# q4 F# @        initArray(currG,numLinks,0);
4 a+ G: Q6 a- z1 G$ Z& A        initArray(currB,numLinks,0);
& F4 b. B/ C( T* `4 D' H3 u; A        initArray(count,numLinks,0);" Y& i9 W3 h/ J2 \* }( ]" G
        initArray(fadeOut,numLinks,true);
  o/ e. f/ n; {7 U& p        initArray(continuous,numLinks,true);. i# Z& n6 d( E( _: o) M
}       
* P$ L) W6 u# u' W: Jfunction startFade(id)
& h# O" Y) J+ Y0 t: P+ X* a7 E{
7 ?3 Q5 O: S0 q        if(fadeOut[id] == true)( [3 d) }7 f3 X& J6 L* K
        { /*move colour towards background colour (increment)*/
! ^9 B! T  C) N" \3 ^. X7 H9 M" r: p                currR[id] += redInterval;) e1 w8 X  E1 [2 ^3 U
                currG[id] += greenInterval;. k5 \7 A% p; ]: }: a; Z2 g& h
                currB[id] += blueInterval;
, j% B9 k2 r% W0 X5 Z                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);
. @5 W* O' U; s$ X                if(++count[id] == numFadeLevels)8 e% `& A/ t0 P& S
                {
" }) d. j/ K4 U& P, I* _1 o# [                        fadeOut[id] = false;( h) M' Y. l; q5 a
                }2 `  x6 P; X  U& Q
        }
8 L3 z7 X" w7 t        else
( Z2 P& W. h, d) X7 d' N        {# O8 S+ p1 U& a4 Y. U) P
                currR[id] -= redInterval;  g- X2 W: f1 m
9 X+ c3 z$ u7 y" M6 _  c6 ^
                currG[id] -= greenInterval;
5 }3 W: W" ?5 e2 W6 W) ?% ^, y4 _- V( B' Z+ n1 m7 Y% x) U  N+ ?% g
                currB[id] -= blueInterval;3 ?% x) z! S9 `  p9 V. X
" @% l  H# Q) W' m9 O8 O3 A! v3 I, c
                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);
# \: V: v7 `; \; ~& M
' {( U* S8 ~: x8 G2 \                if(--count[id] == 0)
5 r* k4 B; R2 I6 a* M9 J  |$ T& C8 ^' `' J
                {/ \3 R5 P: Y- u/ ~
) J5 }( @* {# u: v1 Y. ]; Y- N
                        fadeOut[id] = true;
  V# O  a2 ~! _' m
* {9 o9 M/ ?. L& u! x                }
' ~+ i" A6 b1 x5 K% ~8 N+ t% i) m- t- s) o& w' r
        }# m" N: r" z* b0 F. ^1 A
/ G% z+ }- i7 p, c/ L3 g% c7 e+ l
        if(continuous[id] == true)
4 W) O/ j8 g2 |& C% k' F3 K  F% I; r/ \
        {
6 m* E  r0 T. k2 v# V6 q. R4 o4 x' w4 w0 P; c: N- x0 K
                document.getElementById(id).style.color = newColour[id];                8 U& X# x/ P% }2 G
2 c# d. D: L3 Q+ z+ x2 d# D
        }/ C" a6 p1 h; ]% M1 I$ f* {+ P
3 `4 e1 g' I4 Q/ h% f
        else
+ S/ h3 z! ?+ c) G. u9 N3 Y+ d! @( d+ O3 B5 I3 m" t
        {& _* w& Z) [* R9 I* _
( w4 }5 S( w# X- `3 S2 L% n5 D) r- U
                document.getElementById(id).style.color = hoverColour;1 I6 V' p/ n& S. X' \, m) `* D
+ v9 `( h+ u" p( g, H1 Q; j, o
        }* T, ~# F& u3 r: A

. m1 ]! m% I* i8 I2 Z+ e6 Y1 |        clearTimeout(tID[id]);
) g0 x8 `$ r9 p# J) u( |+ w
4 V( f/ m$ a& B( S9 F& z; ~5 h        tID[id]=setTimeout('startFade(' + id + ')', rate);8 k4 L( i* E  V4 v
# P3 C0 e% L4 V1 p, j' J
}; B1 N2 G7 v. S* s. u* |
- _* _* h. d- z  Z0 t5 m: t. B
function continueFade(id)$ t6 q9 ], @  T  O
1 c: u5 M6 g6 X" C( y4 ^
{+ u+ @# h5 {# z! z: y8 z$ y
8 q' d$ t) T$ Z' r# u) Y2 c
        continuous[id] = true;
: U+ I! s1 ~2 b2 ?6 M7 w+ k' P. L% L8 }% @9 X" s5 ?# x0 k( p1 o
}- U. t0 W3 u( q5 O9 G
; X  Y6 [( X- z) p
function stopFade(id): e/ }* l% r' v3 |. T, z+ e

( e4 O: a3 Q. y8 x2 `. m3 @{
2 B1 K5 M% i9 G' V1 B8 a% c$ R! b+ I6 i5 o4 H
        continuous[id] = false;) N0 z( R+ M2 H! N

& w$ r2 m+ F) {: k! a3 G( q}
1 g! v2 S' G& t6 |
" ]. n! u3 Z2 p% ~* R7 k, |6 T6 D6 Lfunction StartTimers()3 s# d1 O2 ?3 B( Q

5 W% _2 q" B) d. A* G, E* p; Y1 e{        //set up an initial set of timers to start the shimmering effect8 D9 U, D: N" d1 T5 h

+ k# x& c$ {1 c& i5 w, l6 h        for(id=0; id<numLinks; id++)
$ ^: s6 o+ Y6 E6 @. e
" ~8 L, M- ~+ t/ h* x( Y5 R& T        {# K0 {) ]3 }- `; X# w) r! Z

4 b, h- E2 P* i' K) O                t=setTimeout('startFade(' + id + ')', id*100);) J2 p# G- b- n0 N) [* b  S

; U- u! s4 i' V: \1 k        }7 V$ u, w4 q# q/ E- p
! J4 O6 Q1 J5 X& x; o5 Y
}8 g, Z% G  X& D# M1 h. t

0 e0 H5 Y7 h5 j; `//format = initLinks('mouse-over colour', 'number of links', 'fade-out colour')5 w( @- @: c- G$ |  W6 L; i) o0 F

- m4 M) X2 `- Y3 \) }9 OinitLinks('#FF0000', 6, '#FFCC77');8 d1 F3 \# r+ H; l. T$ }3 p( ~
) z1 |& `2 k1 @; b
//-->3 v, v) B7 \8 X' M
. v1 d+ F1 P% ]/ |5 O4 e1 k2 o
</script>
' n  j; ]; {3 [. b: @( P, x<a class="links" id="0" onmouseover="stopFade('0');" onmouseout="continueFade('0');" href="http://7wind.com/">国际域名:58元
  O% v( z/ f) M" A  G' t</a>" \# G" Y! n1 T# [* P7 b
<br>
! C, D/ Y5 g$ b8 U, _- X. N<a class="links" id="1" onmouseover="stopFade('1');" onmouseout="continueFade('1');" href="http://7wind.net/">国内域名:110元</a>/ n$ V$ M7 B! I1 W
<br>
* @- t, o$ |# X& O# r: ]$ @<a class="links" id="2" onmouseover="stopFade('2');" onmouseout="continueFade('2');" href="http://7wind.net">新一代企业信息系统</a>
# k7 ]  R1 m# ]0 @+ m8 a<br>       
, O3 O# @1 d" s& S<a class="links" id="3" onmouseover="stopFade('3');" onmouseout="continueFade('3');" href="http://7wind.net">新一代网络商城</a>
' _4 U: }# K2 N* P<br>
! j* [' U" g5 U9 B<a class="links" id="4" onmouseover="stopFade('4');" onmouseout="continueFade('4');" href="http://7wind.com/">全新的自助建站方式</a>3 T8 S, v+ `2 y3 J0 Z* g
<br>
4 [' d9 Q: j5 Y' c" v, @<a class="links" id="5" onmouseover="stopFade('5');" onmouseout="continueFade('5');" href="http://www.webdevelopersjournal.com/">全新的设计理念</a>
3 `0 L/ v1 J: _) ]3 f<script language="javascript" type="text/javascript">
5 D2 ^2 F+ d# v3 ~: Y4 z8 ^<!--" G+ H% p) ^+ X/ o% ~
setTimeout('StartTimers()', 1000); //initial 1 second delay to allow page to load and ensure smooth shimmering
  C9 z) G7 ~; \: a# O$ Y//-->) b8 |1 Y* z1 s& ?9 }
</script>

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