返回列表 发帖

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

<script language="javascript" type="text/javascript">
, }% Y* `7 m( t0 @<!--
: N# A, [! `2 a) t, W: }6 {// convert a single digit (0 - 16) into hex
4 ^$ j9 d& x1 d2 h9 x4 ?function enHex(aDigit)
) T1 |/ ^+ F4 s) e; y{
, }+ t1 r! \* B& @: b    return("0123456789ABCDEF".substring(aDigit, aDigit+1))
( G9 B2 x) j. _8 f}3 O/ {& r; d3 N/ w+ W7 g/ \
// convert a hex digit into decimal3 q$ @# y) r7 w. ~: s  w
function deHex(aDigit)$ G% v0 s$ z# r& ^, A. u
{; }2 S# j$ |1 r- q5 p
    return("0123456789ABCDEF".indexOf(aDigit))
5 {' B$ z/ c; t9 Q5 F% @; l}
1 ~; [$ R1 l: X1 a6 P3 {& G$ J6 |* B* k
// Convert a 24bit number to hex
' Q% Y5 [! @0 ]. ~function toHex(n)$ Q' J& N! [- M9 w9 n. u8 i0 v6 H  F
{
* A3 r% L3 j. Q1 _4 K' Y* L3 u  K4 D    return (enHex((0xf00000 & n) >> 20) +
5 x% C! w( I7 c( C' ~7 Z            enHex((0x0f0000 & n) >> 16) +
, t& F6 a1 O  d            enHex((0x00f000 & n) >> 12) +5 g8 ^- l8 I: e8 S, F
            enHex((0x000f00 & n) >>  8) +! b- [) u# I0 i; I4 R) |& e
            enHex((0x0000f0 & n) >>  4) +( [' ?% c) U6 l; T$ O/ b
            enHex((0x00000f & n) >>  0))
) t, W( K/ j7 y% y" n}
$ G+ G- F! h5 A1 V8 N- D& S// Convert a six character hex to decimal: O) c$ m9 r& V: |7 n" r
function toDecimal(hexNum)
5 S( F8 p2 q8 z) P8 d+ b{7 k. F7 r8 l9 l: l) c; `& O8 U8 `
           var tmp = ""+hexNum.toUpperCase()/ W) P1 S1 w8 u( L' w" I
    while (tmp.length < 6) tmp = "0"+tmp8 s; s, c6 }; k. W4 Q2 _. t: c
           return ((deHex(tmp.substring(0,1)) << 20) +5 O# [" Z& H; v2 i" I; g
                   (deHex(tmp.substring(1,2)) << 16) +
- a3 |5 u1 |3 i; L3 m3 D            (deHex(tmp.substring(2,3)) << 12) +
3 x! h" `% k; {) L! p            (deHex(tmp.substring(3,4)) << 8) +5 H2 v$ R! D5 z# b3 c
            (deHex(tmp.substring(4,5)) << 4) +
) Y: G, M+ b' v5 ^) H  d0 x3 F                   (deHex(tmp.substring(5,6))))6 Y7 g2 O& M' t
}
) S7 N8 M& V9 x/ U% ]# B9 P8 O///////////////////Shimmering Links/////////////////////
/ j! P+ x/ u' H. D7 ^/ _- ?" j; Q//global variables
) p  ?$ i( g" j: z- F; P9 Gvar hoverColour8 r1 E9 u! V% I. `
var numLinks;: V6 a& N; ?% j' _: f  `' Q/ x7 C) q
var rate;
1 m! c/ n# ?9 z3 I; J; q' avar numFadeLevels;
  h4 ?1 M6 N; n0 U; V2 ]6 Z! ]var bgR;0 z5 s! m( m, ~3 u9 d! ?  d
var bgG;
" N( j3 b% @% J0 M( d0 Q: ~. p4 uvar bgB;2 O& K" W; D' _2 B
var currR;2 M/ u9 L4 A' e& ?: U
var currG;
- n2 G8 t! w# e8 g  m/ k& B/ W/ @var currB;. q4 r9 o6 _) V  R7 n4 [) I2 [/ l
var count;
; m% W* }' i3 g  p. H2 ~) zvar fadeOut;& K. ]) j7 [4 |: m4 \) L- q, d
var continuous;
: Q" ^9 `1 V  @+ kvar newColour;; C6 e1 e" O' [( e, _& I
var tID;) W4 Z3 s. n, Z) F3 H
var redInterval;
: I! a) ]* F' A4 a! |( mvar greenInterval;
. D) w$ ?6 o* \var blueInterval;' O; G: r# ^5 w" D& F0 C( ~
function initLinks(mouseOverColour, numberOfLinks, fadeOutColour)( J. m; B) o5 F5 i3 @+ u
{" f0 H/ m  a; H3 {/ j& m
        hoverColour = mouseOverColour;
3 |9 t: C. O* b        numLinks = numberOfLinks;
& C! Y1 S& f: t' v- F        rate = 1;
% X5 ?% C; m: r8 t        numFadeLevels = 30;
/ c2 v; a1 N: H& ^4 T& s' c        function initArray(theArray, length, val)* ~: U9 Q( K  D+ t$ ]
        {
. d: J+ E& e) w7 P, {8 O                for(i=0;i<length;i++)
6 Z2 |) f7 {& m, {& f( Q% [                {+ v& ^9 x0 b9 B* m( ]9 y/ z- L% F
                        theArray = val;
; V0 x+ v+ }  L* n5 {- u& z                }8 {+ ]3 C6 U5 p# S
        }
0 V4 V4 ?! o2 x  j4 e- [8 s& R/ |        bgR = '0000' + fadeOutColour.substring(1,3)
( |$ \! a3 ?0 Q; N% m: D        bgG = '0000' + fadeOutColour.substring(3,5)0 _8 z/ P$ V7 d* Z; W, Q7 q$ P
        bgB = '0000' + fadeOutColour.substring(5,7)6 ^( }: n* I+ {/ E- j, n
        currR = new Array(numLinks);
8 \0 y8 `3 q) U% t4 m        currG = new Array(numLinks);
# c: m/ {' E+ v5 X4 L8 V        currB = new Array(numLinks);
$ W, I1 J& _6 @        count = new Array(numLinks);& X0 \) U! o# E( M9 ^8 h
        fadeOut = new Array(numLinks);
8 F3 Z0 C% \+ h6 ~. ^        continuous = new Array(numLinks);. ?1 m; q9 |9 A1 T" P! d
        newColour = new Array(numLinks);
$ \. I4 T8 X0 z$ J: I  y$ B) B        tID = new Array(numLinks);
( r% |9 x2 k, Z& d6 t" \- ?& O        redInterval = toDecimal(bgR) / numFadeLevels;
+ O2 a) z/ E/ r/ N% v9 o) D% F        greenInterval = toDecimal(bgG) / numFadeLevels;$ {$ f" u( w4 E; V1 s; {
        blueInterval = toDecimal(bgB) / numFadeLevels;
0 f  x) C& g  Y- U4 ~! z        initArray(currR,numLinks,0);$ @0 p6 f  O1 S* y2 i
        initArray(currG,numLinks,0);! c: V" w. N$ f; `7 l! H3 D( A
        initArray(currB,numLinks,0);
/ y& O4 H# |) |& A9 `        initArray(count,numLinks,0);
+ M3 c3 T+ @2 _% Y8 _. |        initArray(fadeOut,numLinks,true);) ]8 N" }/ p, s, X
        initArray(continuous,numLinks,true);& z% T2 J. R) H6 a& M$ G
}        9 a5 w! u. k% y( r5 b' C  N2 x
function startFade(id)
0 l: b  k% T1 |" R* P7 r{& g# H( z9 m- I0 ]0 H, y
        if(fadeOut[id] == true)9 I* Z5 H1 v! o0 m
        { /*move colour towards background colour (increment)*/
( k9 M* z2 B- T2 C; k  h                currR[id] += redInterval;
( s0 M! `% k  N6 O/ s3 k                currG[id] += greenInterval;2 Z& h& B6 {2 \, s  _* C& V* |6 D
                currB[id] += blueInterval;$ b# C" g% x) W, X
                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);
  M* L+ t7 _+ b7 R5 Q                if(++count[id] == numFadeLevels)' l9 d% Z" M+ l9 L; }, t
                {
+ U$ k+ r; Y* _8 o( z                        fadeOut[id] = false;  s2 X& W* M- U: A3 n
                }% [% A+ {& }) X$ [$ s& Y
        }
& p. e% J4 H" C) A        else5 q/ D+ a% D- k  h  _" I
        {
8 p8 x- Q& I3 U2 c                currR[id] -= redInterval;
- t: f" t# `: `; t. E) o* h0 U- f
) R+ _: P# b7 A8 S: k/ [# O" l& e                currG[id] -= greenInterval;
% a$ N7 [' P. ^6 e5 j* L" z) l1 X1 l  _/ r0 r" u2 e
                currB[id] -= blueInterval;
/ r5 i) }2 d, a6 O* V5 f9 {1 o3 d0 S8 b3 g+ C. \# K4 O8 U
                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);
9 r) e  a7 i" A1 U- i" f& P. X$ c! a9 g
                if(--count[id] == 0)$ O) \3 K" r. }% v* h( |

4 S) c9 G3 j7 |( ?, L# t- |  l8 C* d                {( {! w7 Q1 H6 N3 j' J! o

9 c; R1 y! s4 Q+ P0 g$ m                        fadeOut[id] = true;
1 P0 i  x- v; G! A. \3 l0 S3 g& s# r
- h& I. }1 Y4 A9 f- b                }
% ?7 @* ]( u$ C: z+ u7 K; u* p2 ]1 ]6 O+ y# W
        }) \' p$ \3 `, Z! C) g' n& u; U
. w: z2 S7 o2 R: B# [0 J
        if(continuous[id] == true)
5 `% ^. |  N1 v7 m, v/ K) P/ p# P2 k  P+ l; `( M, {
        {
3 h/ e: s2 k* x9 e- x& e0 I# R% `; q" b8 M" {
                document.getElementById(id).style.color = newColour[id];               
0 x5 r% z; v! N0 n" s& \, G% r
8 v: O5 i, V* h. H( a: ?6 C/ Q( Y        }
4 s9 ~, }3 t& h2 F- ?; `' S* }
, {) t# S5 v; w$ K        else
9 y. @# S5 I  V4 n! t
4 d$ f: D/ Q# y! E/ y+ S        {
4 b" y4 Q  T0 t# l7 D  J7 s0 |5 n  d( [1 S
                document.getElementById(id).style.color = hoverColour;: v) j( j0 w9 a! i9 D3 A# c

( h5 A* j; B) b- K        }" K, Y! v4 E3 p
( F+ B0 O0 A5 w6 [5 X+ ]% F" e
        clearTimeout(tID[id]);
  T' y, \" @5 t4 e
. x, Q# `( e; x! C. C' s        tID[id]=setTimeout('startFade(' + id + ')', rate);
& z& H, y8 N# N3 }& G- S( x  |! \1 Q  w7 S: a0 i6 X% O
}0 j( v  }2 W! R

1 l* S1 [! B5 J' O8 j9 Wfunction continueFade(id)
! L) I5 }" \! B3 J6 C# Y( s
4 j2 Q# ?8 v, Y/ r: n{
: F: _# K( ~# r, F4 e
8 U8 B- z7 u! M        continuous[id] = true;
6 r+ v7 _) l7 k  I3 M. v% C& ^
9 u) n8 G/ b4 }9 l$ B}
. G% X- ]7 L- I& l  P
2 z5 g( ~- I" v8 \, `7 h; Hfunction stopFade(id)
: D3 c/ z6 I, q* r
. Y9 M# X( y1 N! f{1 R6 c; C4 S8 U, R! f5 M
' O' R$ c9 O8 l8 B9 F
        continuous[id] = false;
) V( N# ?- S: G2 u  p& G2 m) y& K9 C2 P4 n/ ]5 D
}8 ]6 m2 M7 C& _

7 B" {( O- O# b3 t. vfunction StartTimers()% h; C$ _% F3 P. r
4 |4 w  d) y" }3 S% l5 {
{        //set up an initial set of timers to start the shimmering effect
1 I3 _" f8 h, Q
. F1 r5 d- n  {# a# N        for(id=0; id<numLinks; id++)
! Q, K+ @9 |! `+ c) `( K! u
4 M: T, k3 D5 d" g( g        {
2 y# m2 ]4 f* M3 O. r8 s' v. a; d1 F
% }4 H2 F) u2 k" ^4 o# n: ^" ?% S( t2 s                t=setTimeout('startFade(' + id + ')', id*100);
! _: w8 [9 |2 P3 |1 Z5 P% T2 Z) o; {' l) L% m/ a
        }7 U1 J6 Y, \0 M/ p1 b& g
2 z1 R6 K# A6 X" M
}4 h3 I9 A0 f& t8 ?1 K1 p  v! `
* V. O3 }9 u, `  L
//format = initLinks('mouse-over colour', 'number of links', 'fade-out colour'); P1 z5 G, |* b8 p# P
( V) e' q7 R: J, ~! w3 F" S
initLinks('#FF0000', 6, '#FFCC77');
2 M+ j1 z  M' |# ^  ^' o2 f4 s" N2 L# I/ Y" W" k
//-->
! u0 T5 U/ t6 C1 B1 V0 M4 A
% f6 ]1 ?+ L. ]. z</script>
' D6 ^" Y7 z" D6 U6 ^<a class="links" id="0" onmouseover="stopFade('0');" onmouseout="continueFade('0');" href="http://7wind.com/">国际域名:58元
( [2 @' W7 _5 }0 I</a># [: J6 T8 J( |$ s# U, m
<br>
( J* _& R) I2 X8 A<a class="links" id="1" onmouseover="stopFade('1');" onmouseout="continueFade('1');" href="http://7wind.net/">国内域名:110元</a>
  m# d( d! y% U  @& V<br>
0 a3 c$ a" E6 E2 {; q! O- l<a class="links" id="2" onmouseover="stopFade('2');" onmouseout="continueFade('2');" href="http://7wind.net">新一代企业信息系统</a>
% f2 C- E1 J5 \" {# ^( D4 }<br>        ' {4 D6 F7 ]  E, T' P" M
<a class="links" id="3" onmouseover="stopFade('3');" onmouseout="continueFade('3');" href="http://7wind.net">新一代网络商城</a>
  [" e, C: D. I<br>
9 S1 z4 J8 a4 `6 V# C" B  a: @<a class="links" id="4" onmouseover="stopFade('4');" onmouseout="continueFade('4');" href="http://7wind.com/">全新的自助建站方式</a>) R/ Z/ l, c( u" ^
<br>
* r# ]8 R+ e, Q! Z& J<a class="links" id="5" onmouseover="stopFade('5');" onmouseout="continueFade('5');" href="http://www.webdevelopersjournal.com/">全新的设计理念</a>
! m5 q% y. Y8 L- J: z( N<script language="javascript" type="text/javascript">
/ q2 B+ ^* D/ q; {) M% E<!--3 q" K( H9 I7 f& C
setTimeout('StartTimers()', 1000); //initial 1 second delay to allow page to load and ensure smooth shimmering
& K% k  R  I( G8 r//-->
! h/ b6 F1 M% U! X" Z# c- [2 Z</script>

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