返回列表 发帖

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

<script language="javascript" type="text/javascript">
$ c6 W. y% o5 d* H- M3 S5 E<!--
: B0 `, l2 F% z& z) ~! I5 }' _// convert a single digit (0 - 16) into hex7 X) o8 L! @# a2 \
function enHex(aDigit)
( Y9 k# o) Z/ Y9 _& f/ K{; Y  S& b. t4 ?" a1 C5 B
    return("0123456789ABCDEF".substring(aDigit, aDigit+1))
1 Q6 t$ Z  G" Q7 l! X8 w}
2 P" R& n. o# L7 s# N// convert a hex digit into decimal2 q* Q# V# Q# ]" h8 L) E* F
function deHex(aDigit)
, T: w4 M0 E4 ~0 ?. y7 y{: u7 b+ U) J2 `. j
    return("0123456789ABCDEF".indexOf(aDigit)), \3 g. M' }: \
}
/ k- l8 f+ G: f
4 ^0 X5 y$ }4 _) t// Convert a 24bit number to hex1 d7 F$ Y( |* s* i8 c6 n
function toHex(n)7 G, T, u3 Y7 ?; t6 Q
{
# a8 d( V* O& q' H9 P    return (enHex((0xf00000 & n) >> 20) +9 X. W/ e, A3 Y: M' |2 u2 W
            enHex((0x0f0000 & n) >> 16) +. t9 i! z2 W8 F( Y: w0 a& H
            enHex((0x00f000 & n) >> 12) +
. U) R# v1 k0 `8 t6 p+ S4 w& T            enHex((0x000f00 & n) >>  8) +: n% M6 p6 E5 g3 d) w# T7 T( z
            enHex((0x0000f0 & n) >>  4) +8 [/ V+ N8 `$ d- ]  `6 N
            enHex((0x00000f & n) >>  0))
3 ]7 E) L" z2 R; m6 E9 C}
" B& n$ o6 m# F* H$ _) g// Convert a six character hex to decimal
' }+ h7 u3 a5 |- r+ Xfunction toDecimal(hexNum)3 v' h& ?- A* g$ m/ [# A# A
{
1 ?1 o8 t9 c. m% t# R8 Y. |& K           var tmp = ""+hexNum.toUpperCase()4 Z: K  C  [# S  W1 X$ y6 G
    while (tmp.length < 6) tmp = "0"+tmp
3 s& t2 Y& c5 G) n, L6 z2 u5 L           return ((deHex(tmp.substring(0,1)) << 20) +0 P7 L4 x; B) \
                   (deHex(tmp.substring(1,2)) << 16) + $ `$ Y. V0 z- C/ d$ |
            (deHex(tmp.substring(2,3)) << 12) +
9 }3 o+ w# Z- a& u# ~6 }: A, [            (deHex(tmp.substring(3,4)) << 8) +& U3 V& F* s+ M2 Q9 X; l
            (deHex(tmp.substring(4,5)) << 4) +- W( z# r0 E; }6 n  S0 s
                   (deHex(tmp.substring(5,6))))
. h, \$ v( N" K5 @- n}
7 t. D6 w% z! x( [. y  U- t& W///////////////////Shimmering Links/////////////////////
  P! i. C5 }# T' _/ i+ q' [) R//global variables4 d# g$ P3 p/ }
var hoverColour
2 j1 \( s; n5 l. d: \/ \var numLinks;
5 k9 D% |; N( {, {var rate;9 S: d$ f2 w/ E. l
var numFadeLevels;
% s8 e- ]* b  N/ C4 k% @, Evar bgR;) K* ~7 t8 q6 o0 j5 a: p" J
var bgG;
* P) ?: e/ B! }- Y& \+ xvar bgB;
3 z3 D- x) P9 R* ]var currR;
8 }4 ~, B+ Z2 bvar currG;! F% x' a) W+ D( Q
var currB;& r: ^* c. q: O* a) D5 t# Z! |
var count;. }  w5 A9 i3 E' p( p" I
var fadeOut;! ^4 g+ y" w1 S2 h3 E$ {
var continuous;) p% {! W; C/ j9 t
var newColour;
; N" C8 m% b2 s9 R) q* b# g+ yvar tID;
( k" G4 C9 L+ H: tvar redInterval;
' Z5 A, E& ~6 K! s8 h# W% m$ xvar greenInterval;
! V6 {# f9 w/ g# Bvar blueInterval;' \9 A9 g% `4 j5 x0 W
function initLinks(mouseOverColour, numberOfLinks, fadeOutColour)
9 `. K. @6 d5 O1 Z{$ v- T1 ^" T9 J: r$ k9 }( x
        hoverColour = mouseOverColour;( s# K9 q/ K2 L1 @3 w; u2 o
        numLinks = numberOfLinks;2 h" T: G6 \7 K
        rate = 1;
$ d! q7 k7 O9 n" p; _0 \- g8 N        numFadeLevels = 30;9 J6 d8 K) L1 j% c" v" T
        function initArray(theArray, length, val)
! n, s) W* r  M+ ]$ x        {0 g; H- {9 f9 r! F, X
                for(i=0;i<length;i++)  M: y+ m- p* J! m$ v9 o1 o
                {
% p& F3 ?0 [1 D8 e) B, {$ z; Y                        theArray = val;
' P5 R! H# u7 f0 M: e$ a- b$ b                }. W1 G. ~* i, v, b; A
        }
- `- h5 R; |* O        bgR = '0000' + fadeOutColour.substring(1,3)
: I2 {5 ?/ R9 m3 `) _: p        bgG = '0000' + fadeOutColour.substring(3,5)
. X* o) y1 s9 I  ?1 W8 }3 W" t        bgB = '0000' + fadeOutColour.substring(5,7)3 a: `) R/ C3 _) c( f' I
        currR = new Array(numLinks);% y3 J" I0 a& f, ?- O
        currG = new Array(numLinks);
. `1 ^, ^6 l- K        currB = new Array(numLinks);: {6 ~/ M/ E" ]4 `: w
        count = new Array(numLinks);6 {* W2 U( Y& L, H# f. i
        fadeOut = new Array(numLinks);( s( P& k; x* {! y( F# ~" z
        continuous = new Array(numLinks);5 b: Q: J# G  [. r' S1 X1 N
        newColour = new Array(numLinks);/ ]2 S7 ]' n' E" W- J% P
        tID = new Array(numLinks);; |3 a' L) S, V
        redInterval = toDecimal(bgR) / numFadeLevels;7 z( E1 }7 i0 Q
        greenInterval = toDecimal(bgG) / numFadeLevels;
$ C/ N9 `3 z2 G/ E9 m; k1 A$ i        blueInterval = toDecimal(bgB) / numFadeLevels;
9 X: J% d+ M  L, x        initArray(currR,numLinks,0);
! a1 H. Z1 n. Y3 B( a0 Z( r        initArray(currG,numLinks,0);
% P- k% ~- W. k# m4 a2 W; w( W        initArray(currB,numLinks,0);8 L, u5 t+ R, T: P
        initArray(count,numLinks,0);
* r' j" x: A" P  ~/ c        initArray(fadeOut,numLinks,true);/ j2 I  m# p+ K: }
        initArray(continuous,numLinks,true);
# f- e# C  ?' ^" s: q' q}        7 T3 q8 w( O  B+ E. X
function startFade(id)
  p& I/ A' T6 o. x- W3 Z: W+ K/ Q{
0 O4 \6 @+ e7 f# B* a- c        if(fadeOut[id] == true)6 ]2 d# l7 J% O, i( r; K. Q
        { /*move colour towards background colour (increment)*/
4 W" I$ S5 D0 `  |8 q                currR[id] += redInterval;
" _+ {, W, O: o                currG[id] += greenInterval;
' w: e: q- q7 W6 e6 U* H+ V                currB[id] += blueInterval;- T. i7 d8 a8 [( t. i; f3 Q
                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);! f3 z- k! ~9 z
                if(++count[id] == numFadeLevels)
# ~6 B3 S# j! M2 g) b& ~                {
# q, |+ S0 b4 i                        fadeOut[id] = false;, ?* q& K9 B! z+ ~4 }6 p, B6 `
                }
, W( \: E/ F/ J) k$ p        }
; T5 R/ D+ H8 j0 x        else
$ q* q8 K0 Z2 p  t2 P        {
7 n. H& I- _2 E9 @6 K7 C                currR[id] -= redInterval;9 h' P6 d2 J! t( _; h! M5 b
4 [9 N7 I/ Y& M' z
                currG[id] -= greenInterval;1 P2 m; g6 j. t- F, u# ~

2 h( S7 Q3 t( b; M2 g( b& q& R1 G                currB[id] -= blueInterval;2 J8 V3 s+ ~+ t

! u  L3 p8 p: z1 ~5 s                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);
. ~+ W! }$ g% R/ w- m/ c4 r* t+ T3 l2 c$ J
                if(--count[id] == 0)# |2 w0 q0 z& N; h# J, }$ ?. A# c5 |
& I7 O* C1 x/ x
                {
" D! C) x4 u, Z8 V; j
3 T  l& a* W/ B: m: w6 |                        fadeOut[id] = true;
1 v4 I2 _9 u- |" I" E8 x  _0 ^9 C& G8 B( D& o5 A1 }3 I
                }
# \) J8 F( @6 W6 C8 l5 b; {
' {" Q- i2 J- a& P1 Q: ?* h# Y        }
, u; x5 e+ P7 N0 F0 l) E3 V1 R
9 u; B* C  l  u# k% b        if(continuous[id] == true)
0 n& @9 L* V. _' R$ }$ l% W1 m4 o& Y$ a. A
        {2 O6 y, x( }* P! r, ~' R0 j) H/ @. `
/ t& z) e: R  h- [* ]9 |
                document.getElementById(id).style.color = newColour[id];                ) @$ [1 x$ \: i( E8 q! d
6 A6 Z2 e. F- E: @
        }
. s* \7 q) p& `- \+ ?7 R% _% Q2 E1 a) I1 b% R. L
        else
5 t) j" f' J/ V7 K9 j, c
4 C. {) M3 r+ B  g8 b: n        {
( b9 E5 M! L2 s) j! `9 J. Z
* V) p  @1 y9 b# G! C                document.getElementById(id).style.color = hoverColour;. c4 y$ [6 x  `- A. S( o8 S+ L4 B

7 x8 c3 b5 a/ K+ Z8 `        }  u# e; Z) M( B$ l% {3 m
7 n6 [/ F1 a0 T* ?- B3 T
        clearTimeout(tID[id]);$ Y* b- C* s; {/ c" [

8 {, b7 [1 G& f8 u4 ?        tID[id]=setTimeout('startFade(' + id + ')', rate);0 V: Q1 s' I3 f3 [/ S/ o8 [

# M. ^. i- B" r9 K: D}& k+ O# c( a3 P' z
' [8 B; k- `, N3 q6 t
function continueFade(id)
+ N: b4 i$ r: j) `/ _
- f' m% W' Z/ |& B' Y{
/ {; y" M+ W5 P# b/ ?; f: B; D1 a  Z8 \! _+ B4 |1 S& g6 H
        continuous[id] = true;
6 a5 W7 d+ }+ X, j5 Z( K* a) h; r/ A5 o5 e9 \) r* ~- K5 ]7 Y" i0 L
}
- l4 z* O0 f6 U) m5 `9 {0 i2 w2 i8 K1 ?5 m3 T
function stopFade(id)
0 N2 r& f* l, \8 H& K# @
5 z& k3 h  ^0 h6 U/ Z8 X{, @! F5 R5 |2 s- [3 |

! Y1 ~2 X! r' S7 k# {+ E        continuous[id] = false;/ C' |* H" y4 z$ A
: A6 Y* ]% n& y' c% t/ H
}
( @% N4 f( ~/ ]' B1 n7 m
, x& ]0 F- `/ I5 l$ {function StartTimers()& ?: [+ s- }6 \, ?5 K+ L, ^" o

& s2 r' J2 R9 |+ \. u{        //set up an initial set of timers to start the shimmering effect
2 h0 m6 V( i1 ?6 @& C% Y5 O+ ~0 i1 g2 @2 n% e3 N% w1 P# t
        for(id=0; id<numLinks; id++)/ \$ C6 k  A$ V# U: _% C; c+ `6 R

( q' B; l# g6 l2 z& w7 b) k; T8 [        {
0 b5 Z) G" z$ g6 y
1 \( _9 ?8 [: v. e; f1 D                t=setTimeout('startFade(' + id + ')', id*100);
# U. r: }* I: u0 x( p5 ?/ V0 j3 F6 e
        }: Y0 U" ^/ v+ Z3 A$ d

. w2 E; U% S8 L/ }4 k}
; I7 E$ {) ~' Q/ C( V. N) Z+ q! F5 e$ X/ d0 A5 b
//format = initLinks('mouse-over colour', 'number of links', 'fade-out colour')2 x& M% X8 U% P) T0 Q& K# [

4 G, I" y# n% t- A. V- q. _initLinks('#FF0000', 6, '#FFCC77');: e' }+ l1 u! {4 f: v+ K% s

9 R9 ^: g8 @3 [, q6 F" I//-->7 O6 t  h; i- ^5 ~8 m$ G) k, N

5 n9 }: g# z, J3 o0 s2 i</script>
) [2 I& ^8 L, V6 f0 @3 u<a class="links" id="0" onmouseover="stopFade('0');" onmouseout="continueFade('0');" href="http://7wind.com/">国际域名:58元
& B$ @, a$ u9 ?2 P% k</a>
. l( ?! O# |& b9 v: l# p( y" m<br>
, k) X8 ?1 C1 ?6 d9 ?<a class="links" id="1" onmouseover="stopFade('1');" onmouseout="continueFade('1');" href="http://7wind.net/">国内域名:110元</a>
. \" C: a. T: M4 ]0 \( l<br>) n$ v6 x2 C$ f3 w' ~* R/ j: J
<a class="links" id="2" onmouseover="stopFade('2');" onmouseout="continueFade('2');" href="http://7wind.net">新一代企业信息系统</a>
' |# u- d; j2 p<br>        ' _# |( \8 N5 ?; V. B# A
<a class="links" id="3" onmouseover="stopFade('3');" onmouseout="continueFade('3');" href="http://7wind.net">新一代网络商城</a>
; r! d7 ^0 g/ j) L7 q5 V<br>
5 T: S" I" \6 j' i6 ?; ?<a class="links" id="4" onmouseover="stopFade('4');" onmouseout="continueFade('4');" href="http://7wind.com/">全新的自助建站方式</a>
  L5 ]. [: t$ m<br>
0 ?. @. j2 @* O2 c<a class="links" id="5" onmouseover="stopFade('5');" onmouseout="continueFade('5');" href="http://www.webdevelopersjournal.com/">全新的设计理念</a>2 C+ i4 k8 [1 m) ]7 G; g
<script language="javascript" type="text/javascript">
' \2 B0 ~) [& V0 j4 {/ Y<!--6 ]! u3 u1 N8 E: D* {! l4 X. o
setTimeout('StartTimers()', 1000); //initial 1 second delay to allow page to load and ensure smooth shimmering7 I* T8 q% K1 x$ q: b- _9 H
//-->) w# e$ Y) M) `8 Y3 d! P
</script>

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