返回列表 发帖

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

<script language="javascript" type="text/javascript">! K% z1 S7 i2 ]' L+ f" {
<!--
; B" _. p3 h* l0 T// convert a single digit (0 - 16) into hex0 q8 E5 E3 H* T
function enHex(aDigit)
, L5 T6 o: Q$ m: V) q{
9 j% d$ \5 {+ U    return("0123456789ABCDEF".substring(aDigit, aDigit+1))
/ K9 T% s) G: }$ ]" @' r/ W; _& T}8 e) G2 N# R3 L0 w2 W' A
// convert a hex digit into decimal
5 b; b9 g7 r  s. e* bfunction deHex(aDigit)1 D0 K% f$ U% t: b: B% `1 i* J" W
{
7 z, t: d" S: z6 `+ v# n  t    return("0123456789ABCDEF".indexOf(aDigit))1 g  c2 J, A9 a. \) a
}0 @+ v" j& s; w" g& j
6 U- o: L7 ]- ?1 U) [. S" ]6 ?
// Convert a 24bit number to hex
6 v5 f$ }# M5 E- M5 gfunction toHex(n)* b" U$ y/ ]9 U' K" ]
{0 D$ z2 H& N7 J* t+ T# Z
    return (enHex((0xf00000 & n) >> 20) +: x; a7 M: y- b
            enHex((0x0f0000 & n) >> 16) +
3 q5 s( d5 Q: P/ Y% b- l6 P- ?! u            enHex((0x00f000 & n) >> 12) +
4 b' H4 v' _# Z- U. g& i            enHex((0x000f00 & n) >>  8) +
9 F3 c7 f9 `( @1 m! E            enHex((0x0000f0 & n) >>  4) +
" V5 h" C! ^/ z& T            enHex((0x00000f & n) >>  0))
7 ]- t2 I9 u) V' v" ]4 W; ?}- ~! c4 C5 d; a  e4 @& n
// Convert a six character hex to decimal
3 l) z# {! y, I$ m2 g- l$ n* cfunction toDecimal(hexNum)3 O; }9 W) t; ^- r; C- k/ w/ h
{
6 U+ q; q& G( k9 v4 X5 P3 x           var tmp = ""+hexNum.toUpperCase()& k8 q! j, D: `2 W* g, L
    while (tmp.length < 6) tmp = "0"+tmp
$ O7 u$ p3 t$ n7 I) _$ p/ a           return ((deHex(tmp.substring(0,1)) << 20) +
3 `2 k) L4 I+ u' e7 v                   (deHex(tmp.substring(1,2)) << 16) + ) B7 g8 o! ~# {8 F
            (deHex(tmp.substring(2,3)) << 12) +
! ~, X0 p2 M9 D& d8 c9 g$ @7 d" l            (deHex(tmp.substring(3,4)) << 8) +; {  P# }6 ^3 C1 n0 \9 t& Z( ?
            (deHex(tmp.substring(4,5)) << 4) +, K" c9 M5 F. y" R3 U4 ^1 G, ?
                   (deHex(tmp.substring(5,6)))), @! l( A6 M4 N& G, ]' w
}+ o! w; b( F9 V1 k0 @8 F  O
///////////////////Shimmering Links/////////////////////
) U& f, H$ `( i8 u0 Q3 c//global variables
' [8 L. X& @; O1 @5 Xvar hoverColour* h6 _; l  H) N9 |7 D6 C
var numLinks;
0 r/ C3 }! m" M3 C0 x( Uvar rate;
3 v8 k* p$ f# I2 Lvar numFadeLevels;
4 K. ?& @) }* i- y7 W$ bvar bgR;, r  [( i8 E/ g. {6 k9 X9 s8 w1 _
var bgG;: X8 x3 L9 r3 O/ d/ P7 p* K
var bgB;4 U* L2 a! {. m2 J! Q" q
var currR;/ \5 }/ x- }: [; ~
var currG;. @) P3 H. w# s$ m
var currB;
; n! v- k( F1 Z, k, k6 [. Tvar count;1 L) J/ w* c' h! t: c- o
var fadeOut;
: H. Z- N' F$ zvar continuous;
5 z% o2 Y# B& o! uvar newColour;
3 t, t6 G% s3 `4 Y1 [var tID;
# l+ {& f! Y, a! jvar redInterval;
4 A4 U4 @/ {" `; {0 x+ mvar greenInterval;: |2 p2 G4 ?. a+ h4 e3 Q
var blueInterval;" ?2 z" e' @2 `6 v: _& K8 k
function initLinks(mouseOverColour, numberOfLinks, fadeOutColour)" G( ~- z: M5 g
{" F& {3 G( u% O$ m
        hoverColour = mouseOverColour;- }+ _" ?0 E- E$ F# r2 E
        numLinks = numberOfLinks;  [6 I* S) N; W/ D: O
        rate = 1;
% b2 G1 Y  Z) j7 I6 g$ i        numFadeLevels = 30;" q+ [* w+ G. C4 r, L: P' u" g! Q
        function initArray(theArray, length, val)
5 `0 p( t/ V! _" K& \! Z/ t+ t        {
& w: Q+ a. P# m' M! y( ]& B4 V                for(i=0;i<length;i++); d  ~9 U1 K9 w. B2 F; w# ^7 y$ r
                {" f$ W+ ~6 r1 R2 N. F# W3 s
                        theArray = val;7 o3 V4 y' W7 Z
                }/ d/ H, ^! [1 f/ y3 ?9 a
        }( m- d* ?- P$ t/ i1 e+ _* {! v
        bgR = '0000' + fadeOutColour.substring(1,3)+ l) i% k$ h( }# S+ s9 J
        bgG = '0000' + fadeOutColour.substring(3,5)
* ?+ @5 O9 ?( u7 a        bgB = '0000' + fadeOutColour.substring(5,7)& o4 i, c( O4 K6 R. t2 s
        currR = new Array(numLinks);
; H! l6 M. n( X; n( T* a        currG = new Array(numLinks);  r3 h( @1 d' ^
        currB = new Array(numLinks);4 A) [( Z: y9 |2 O4 d/ z
        count = new Array(numLinks);+ k( G7 M' v$ B4 v; t/ f7 T$ Q
        fadeOut = new Array(numLinks);
8 O/ `( _5 i" r4 q2 u        continuous = new Array(numLinks);
' W  _( O; Z( S        newColour = new Array(numLinks);5 O) w( W" a7 ~" X$ h5 Q
        tID = new Array(numLinks);: T# w# d3 S7 s) \& g/ g" O% b
        redInterval = toDecimal(bgR) / numFadeLevels;& j: a. Y! H& |% T* K
        greenInterval = toDecimal(bgG) / numFadeLevels;. e5 E5 `0 q- X! u
        blueInterval = toDecimal(bgB) / numFadeLevels;* {% T7 P$ s8 M0 U
        initArray(currR,numLinks,0);& P3 |( g6 y' K! X4 R
        initArray(currG,numLinks,0);
& M. i3 _. w* e  D" ^; T        initArray(currB,numLinks,0);
+ H$ H' f' ^1 [        initArray(count,numLinks,0);2 p7 |- ~. b6 v/ g) Y
        initArray(fadeOut,numLinks,true);
+ w7 A8 Y0 S/ t! q3 m: w$ |        initArray(continuous,numLinks,true);
8 F3 _8 c2 O/ b) O! T# Q}       
" b3 W! y+ o$ j- _/ lfunction startFade(id)! e; d" j( ~) ?& K! }6 ]
{, E6 i. q7 P) b* `& g6 Z
        if(fadeOut[id] == true)
2 G! G5 [6 H- f! M& m        { /*move colour towards background colour (increment)*/. i+ _+ p+ v. j2 o& q) V3 e
                currR[id] += redInterval;1 C- s: l0 o4 {
                currG[id] += greenInterval;
: U! u9 y: H4 |; d, g0 T                currB[id] += blueInterval;
: d; ^* o) A4 B9 n' B3 h                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);! I* ^& C9 W! B" q2 V* ?; ?
                if(++count[id] == numFadeLevels)
  C* a! q: M( j: H/ @" x                {- G" D- X0 y" ]* o0 m1 Q
                        fadeOut[id] = false;
) I1 t5 w- I" k: E9 K                }
: [& G# m8 f0 H( P8 S        }: ^  N1 H0 B: {& s$ I4 G
        else1 D* o, H4 J0 A& I# s0 ~
        {' P) g% h: F' E! b/ C' b# U6 \
                currR[id] -= redInterval;+ R9 B; x' K- g
4 H1 `7 m1 F- |9 d# S& M) I
                currG[id] -= greenInterval;
3 w" |4 v) i, c7 ]0 Q/ ?- B
% Y" i1 x% m  V2 i2 X& @                currB[id] -= blueInterval;* N$ m1 [  N+ ~' C2 B0 |
% \0 M( j# b" H! q
                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);
5 X% E0 e  C  j9 R, X% l
* _  J. |9 l* S" ?: A" _# z                if(--count[id] == 0)
7 Y/ N, b% Y& c1 R+ @
1 V8 f; h3 u1 ^+ t/ W& @                {
2 `6 Q! H9 M) `  Z7 [1 A% l( s; M% {
/ O# o& o' ^; X& ~                        fadeOut[id] = true;/ |: m0 n  ^6 z  ^, i3 p  W! V
" c) L' l% n) E" n
                }" ]- T; A" m. g% ]. w! q9 I8 Y
* W- e( c5 @( c9 D$ ^6 z, r
        }
5 E$ s& [! _+ r. g4 d
- U) q0 ^8 ?' \" }& m        if(continuous[id] == true)' d# n5 Q$ e% Q$ w
: V! h, |) y1 ^
        {6 d* s" t2 a$ _0 S* h6 B6 f

; g% V4 a0 W7 W4 P' c. L/ y7 O                document.getElementById(id).style.color = newColour[id];                3 M, d( S7 t; f; g2 x- g+ @
2 b0 Z% W# X7 ?- P4 X
        }6 X. v% x% G$ _& @; X
$ v5 Y1 R0 I+ K- r4 t
        else/ _( i& m0 p6 r4 T

8 W: O% u) t8 O: Y9 q        {
% N9 p& c3 U5 m' Y3 h* T% f1 e& ?, {8 J! D3 L4 B" Q: D, o/ V; @
                document.getElementById(id).style.color = hoverColour;) K$ B' s4 w; p7 m
. n; i1 ]  `: v5 g4 R
        }
; l9 d% u9 A% u9 t  ]) n1 H+ Y4 A) _4 O: |- q; r& C8 O7 R' |
        clearTimeout(tID[id]);
/ [- l) e0 c. b, a8 E& j( v4 r: ~8 l) o; i2 ^8 E. J) h% a
        tID[id]=setTimeout('startFade(' + id + ')', rate);
2 V4 H$ e. x4 ]3 t( l% G& m& [9 ~- i
}+ u2 Y6 u9 p: F/ x7 g. i8 @

' \' e4 _* ]# q) x. q& y& X" Bfunction continueFade(id)+ D9 Q! P7 P$ Y3 }5 P. R& z( D( O
7 ^, `! T2 M. Q4 P+ T
{/ u' T# C5 I) Q
" }' n. Z' ]; N/ o& g4 `
        continuous[id] = true;$ T0 b3 W# g7 M4 L) ^
& v& s4 u5 p" O# I4 E+ R
}
: Y) E) a( A) R2 @2 y1 w- R: Q' c% G2 d# |
function stopFade(id). w( T2 m3 z9 J4 P8 A5 y# D

8 j0 m( j) s: h% j% ?{! i! i1 h5 i4 ?3 N0 Q) y3 _* ~) }

: r6 D4 q* @( L5 N- R! j1 F        continuous[id] = false;% A% ~0 R1 \0 w5 ~) n
( [+ N9 i2 p6 w
}
( Z. j: T4 K- E: x" y
' L* `: G- M# T: G$ B  c5 Bfunction StartTimers()$ u# W9 {  l' n) E' j

! @+ B' a9 M# Q1 I0 h0 n3 E! b0 b  V{        //set up an initial set of timers to start the shimmering effect# `- v3 ^1 {1 o- ?3 p3 ]9 q
$ `8 o6 G$ a3 y- w
        for(id=0; id<numLinks; id++)+ `% o9 n! g7 I9 P8 M$ R4 n
1 N" ~: S+ a- H
        {! K/ m3 s. ~; V, E

2 P" f' b3 l( I6 e                t=setTimeout('startFade(' + id + ')', id*100);
* M3 Z7 ?) `! D% D8 b. I8 D. f8 _& c8 [; s
        }: ^3 d* i% W+ n" i: o

/ ^. ~& c6 I' t  ]  Z3 [- h5 w4 i}* U) q# j, W) Y5 t# W& f. I
! F* O2 ^! B: A
//format = initLinks('mouse-over colour', 'number of links', 'fade-out colour')
) T* p* n0 [. m2 O) i( c' E! _. p' H( H8 v9 H  S, Y
initLinks('#FF0000', 6, '#FFCC77');
4 e4 ~3 Z  P# f% J# S# [$ N7 v, ]# }1 z- B0 ^/ k) E
//-->/ t% u2 k  j7 ?4 Q

' o* U; ?# T% E2 d( W  U</script>
% o, K2 x' |* f- u<a class="links" id="0" onmouseover="stopFade('0');" onmouseout="continueFade('0');" href="http://7wind.com/">国际域名:58元
7 y( M% N1 W- n* E6 ^  r! l</a>
9 R* ], a9 C4 x<br>
# a3 Z7 |. x: v5 _5 F1 k6 J( k<a class="links" id="1" onmouseover="stopFade('1');" onmouseout="continueFade('1');" href="http://7wind.net/">国内域名:110元</a>) n& C* z6 T. Q. g9 u0 x
<br>
; f2 B) z/ g, r  M. z0 n! Y<a class="links" id="2" onmouseover="stopFade('2');" onmouseout="continueFade('2');" href="http://7wind.net">新一代企业信息系统</a>) D; t+ ~& ^" ]- U; B" }' K
<br>       
- T& ?5 [8 H% H* j! B" `+ N3 E<a class="links" id="3" onmouseover="stopFade('3');" onmouseout="continueFade('3');" href="http://7wind.net">新一代网络商城</a>3 t9 p/ [5 z- n" ^
<br>  J: N$ _1 J( N3 V& ~1 O
<a class="links" id="4" onmouseover="stopFade('4');" onmouseout="continueFade('4');" href="http://7wind.com/">全新的自助建站方式</a>& I' @8 b0 ^8 X3 s
<br>
3 a6 L8 Z% n( P- D, h+ c<a class="links" id="5" onmouseover="stopFade('5');" onmouseout="continueFade('5');" href="http://www.webdevelopersjournal.com/">全新的设计理念</a>4 j3 B) |0 Y6 c6 p. D! S5 X- ^
<script language="javascript" type="text/javascript">' P- C5 O8 [* s
<!--
7 y0 h, c% N# J0 r: z+ ~$ isetTimeout('StartTimers()', 1000); //initial 1 second delay to allow page to load and ensure smooth shimmering
& D& B( M' A" B3 D% n, Q- D6 K//-->' {- A) D* @. h9 h8 S
</script>

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