返回列表 发帖

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

<script language="javascript" type="text/javascript">
0 h1 f0 V' f, C3 k, W<!--: v# K7 I5 ]% ~" l
// convert a single digit (0 - 16) into hex
" U, T+ a% u  q* W8 s* t, Y( E( kfunction enHex(aDigit)
8 G+ }' E: T8 d) x+ N9 O{; H5 l. Q) [2 b, _. z8 z
    return("0123456789ABCDEF".substring(aDigit, aDigit+1))' ~: T7 e7 j! p0 u  y
}1 P; D. D* C* f3 j; w( S5 g
// convert a hex digit into decimal
/ S% j1 [6 k! h6 G4 y& C% a# h3 zfunction deHex(aDigit)
9 s7 r+ H8 K: t' a  r  |/ T{
2 p" ~% v. I0 |5 H1 z" l    return("0123456789ABCDEF".indexOf(aDigit))% ^% P0 ?; p0 E; A6 k+ H. ]
}$ g8 h% e. O6 w  C/ L9 j  p& ^/ m

* O' D7 o! Y$ z7 j0 J// Convert a 24bit number to hex" h2 ]; {( }/ n; v
function toHex(n), D  I) r& V, X# c/ E9 @8 L
{5 O* a% W' C1 |* X5 E
    return (enHex((0xf00000 & n) >> 20) +
% s7 H' S; g; Y9 U8 z$ }            enHex((0x0f0000 & n) >> 16) +5 H: V* T' t  a! h
            enHex((0x00f000 & n) >> 12) +1 X5 P  c2 Y' ]7 y, F: L# v
            enHex((0x000f00 & n) >>  8) +
( ^  }/ N/ s3 n; o: {; @9 h            enHex((0x0000f0 & n) >>  4) +
' o) F( @- n0 |2 L' w1 F0 y            enHex((0x00000f & n) >>  0))
; E2 r$ y1 c& U- I5 t# s/ @$ {- o}
+ l+ A& J; v! A8 e% M8 p, _' @/ @// Convert a six character hex to decimal& ]$ l: e! I- p* ]# O" d: T
function toDecimal(hexNum)& \2 C/ c: P$ N4 v& j
{
) y6 a* [/ y3 t5 d, z           var tmp = ""+hexNum.toUpperCase()( @/ ]6 n! d* p0 l% m# e
    while (tmp.length < 6) tmp = "0"+tmp5 M9 I' X5 ], F( d+ E: n
           return ((deHex(tmp.substring(0,1)) << 20) +' g9 f5 g. E) n" [
                   (deHex(tmp.substring(1,2)) << 16) +
" X. X9 h5 @7 ^7 u' W1 J            (deHex(tmp.substring(2,3)) << 12) +
+ Q/ G) M: R# ]0 m            (deHex(tmp.substring(3,4)) << 8) +$ ]/ A4 L& l6 O* z# i6 Q! \0 o( ~
            (deHex(tmp.substring(4,5)) << 4) +5 w8 ~) L" s) q+ r# a
                   (deHex(tmp.substring(5,6))))
* ~9 J& R3 S+ P; B# r3 V' U' W}
* I$ P/ b9 |. \' i2 h2 t4 j+ t+ R///////////////////Shimmering Links/////////////////////
, ~2 e1 f8 F. X% l; A//global variables
1 B$ I" s! H5 |! \5 r/ j2 [1 `3 Svar hoverColour
! d; w1 P: j: P3 y+ O4 f0 bvar numLinks;
/ m. K2 }- [2 tvar rate;* W6 u) g/ e* ]" g
var numFadeLevels;/ [. ?$ {  p" H. C
var bgR;
% v& c" r# j+ n# l, \/ t% |) [) Qvar bgG;! o' U+ Q+ T. P3 ~
var bgB;
7 D6 D" \) B& Gvar currR;
8 M5 s7 t) M" i& Dvar currG;7 q! b3 p. n. }  Z
var currB;
5 Y* o' j9 i& s, P" a% [var count;% I- t6 ?8 ~% n0 n' K
var fadeOut;6 ?4 J* g+ Q- Z+ ]3 a+ D
var continuous;
# x, U; c- s) H0 X) d6 ^var newColour;, g+ @! ^0 Y9 T1 }- P  ~
var tID;
( X$ d, A# E5 Mvar redInterval;) H2 [4 {. N5 ?, e
var greenInterval;
5 \: W- X/ ^- |  jvar blueInterval;* X" g2 j0 y( d) r. F
function initLinks(mouseOverColour, numberOfLinks, fadeOutColour)
  c% J  s7 r. _2 ^* Z# E! e/ y3 }{8 w/ I7 s1 x! L' u9 K3 D' r
        hoverColour = mouseOverColour;( i5 W8 I# ?( J
        numLinks = numberOfLinks;
- B8 }- t5 ?1 Q; T8 ~/ ^8 p8 a        rate = 1;2 G0 W# F0 S$ I! C; U
        numFadeLevels = 30;
! L( @$ r# e3 T; z: Q        function initArray(theArray, length, val)8 v& l7 C- t* u, `3 j# J" d" P
        {
" f% k; M& B) W. _                for(i=0;i<length;i++)
4 `& J' \- ^' D2 |( p* r2 d$ J                {+ u1 C- t5 r& j6 g6 p% ^
                        theArray = val;& L# x0 K) j' _0 ^% ^
                }
, E9 l5 B- ?- D0 n3 j; t! N) ~2 z0 K! N5 L        }  s: E0 \) E- S, _" }
        bgR = '0000' + fadeOutColour.substring(1,3)6 I1 ^; c  R4 ^# v, g8 ?+ ]  k
        bgG = '0000' + fadeOutColour.substring(3,5)
+ H4 ~: U. l2 A' b        bgB = '0000' + fadeOutColour.substring(5,7)4 Y- Z/ w( D. x8 ^
        currR = new Array(numLinks);
% F* D" i" E5 C/ ~7 j5 w        currG = new Array(numLinks);
6 b) |. R( `, _* G" G1 V! |" H! v        currB = new Array(numLinks);# S. A* \. ^+ q4 ]/ w5 r" o
        count = new Array(numLinks);( P& C5 E3 U) b  N& O4 W
        fadeOut = new Array(numLinks);
  r# D& P# w0 \* C' X        continuous = new Array(numLinks);6 n/ [& c; e- J0 r2 H  K) p
        newColour = new Array(numLinks);
# S/ |: o' P6 t+ Q5 s  d; K. \% m        tID = new Array(numLinks);8 [: o& ~2 h7 p. g
        redInterval = toDecimal(bgR) / numFadeLevels;
6 f, Q  Y) z2 i; {        greenInterval = toDecimal(bgG) / numFadeLevels;5 Z7 m' H$ U5 e! _% z. p
        blueInterval = toDecimal(bgB) / numFadeLevels;
9 I- H" j! h' X# O( o0 I' k        initArray(currR,numLinks,0);
. I" I- W, W" ?9 ?+ o  X        initArray(currG,numLinks,0);
' r8 J. g2 b- o: Z2 S# ~        initArray(currB,numLinks,0);$ t+ G$ m3 O8 e  r5 G3 q
        initArray(count,numLinks,0);5 b2 t4 U. F' T
        initArray(fadeOut,numLinks,true);) [# r) I- T3 W( Z  u. U# N. T1 N
        initArray(continuous,numLinks,true);! t# V, l* ^* J
}       
6 r* Q+ C6 ~. R. e- `; {. F- G1 gfunction startFade(id)
. c$ [8 l2 \) R6 n$ Y% s{
0 g% v: ], E9 V        if(fadeOut[id] == true)
/ N1 ]3 B2 i! X        { /*move colour towards background colour (increment)*/
5 G% U" o: W9 ?' p3 s                currR[id] += redInterval;* {: n- X7 {2 @2 f
                currG[id] += greenInterval;( B/ F7 ~" ]/ m  Y- r
                currB[id] += blueInterval;
! l/ t7 Q4 m8 z. j" [# c                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);
- W0 j) X  p1 O  r                if(++count[id] == numFadeLevels)0 T- X6 R$ z4 R: T
                {
6 o/ a) g* `$ x% n                        fadeOut[id] = false;* O0 `9 Z7 g$ e+ e3 J: U+ r9 ^; Z
                }
4 L6 h6 x! Z, x( g9 W2 b        }7 ?- b5 l+ L" S: l0 {/ p
        else$ L# h% O# M, X
        {
) E$ |# H2 M3 u$ Y                currR[id] -= redInterval;1 h3 }7 \3 M/ N6 }4 N8 V- O

9 ~/ X1 X" ?1 T# R# K" a1 V                currG[id] -= greenInterval;
. Q1 p, f2 l9 ~8 N& Q  F# W$ H$ f. |) A& u6 s% u
                currB[id] -= blueInterval;5 J! R$ o; p( |  V. X& v
( {& I+ M1 T/ V' k: q( I5 t
                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);
! V2 d3 i6 m! S" H$ {- m  W" v) }9 @# B( y4 b
                if(--count[id] == 0)
& r: B, U# y% n2 f& Z( J8 S$ Q2 b( u( y% C
                {; Q' o& N" x* z" l
. |9 c) |$ n3 b% z: f& p
                        fadeOut[id] = true;  Q7 F. |+ G( ~% ^" Q9 `7 n- a
4 S& g* R  E) R$ E  C
                }
4 G1 V# \5 i  n/ [: l; T) ^% {( U' y' L+ `/ j: d3 |! @
        }
& X/ @, N* a' S: n* d8 M, i
" _% d9 ~, ]/ M4 [6 D1 `9 m: V        if(continuous[id] == true)
0 {! S" X+ T7 u' \! y9 R) f1 o2 h% d3 [4 _# g% S, T; _
        {
1 m4 X+ m+ K. ?; F2 X" p
7 i; W" a/ B$ [- [1 o6 D+ t7 ^4 F                document.getElementById(id).style.color = newColour[id];               
; s% F7 ]+ H. g2 T# W1 L/ i3 ?
" s/ M5 \" Z: p7 _        }
; P' g6 X& y1 p7 P2 o/ R8 f
- z2 N: ?" l1 m% [( g4 @        else
/ B8 L! S& H5 e3 }3 c0 k$ l  H8 f4 a8 y# e9 @( G& U$ n
        {
) a0 W% w- z  f9 V/ q  r9 B$ v5 T% U
                document.getElementById(id).style.color = hoverColour;$ m/ ~& K8 G# ]

$ F5 H( Q# w; |8 f* m- j4 w        }
' e/ ]2 ?& ?& y" |' }
1 |: ~$ ?) [' d3 H        clearTimeout(tID[id]);
: s7 K: p3 a9 _9 E
) q; {& x4 W0 J        tID[id]=setTimeout('startFade(' + id + ')', rate);% b% Y9 Y5 z" T- J0 L. l/ ^$ V& c' y! P
, E- R% m5 V1 @7 w
}& B8 a! S3 q1 \7 r- h9 u9 |3 W9 O
( L. b" s5 ^! j' K/ P' f
function continueFade(id)4 S% J* D6 J9 e" u8 @+ D' g
! E1 c* a5 Q8 ~5 b7 p2 S, Y0 K  B
{) k9 c0 ]1 R0 M1 B1 t) N& F

& D+ P$ t0 \! ]& D8 y. r) M        continuous[id] = true;) a1 a7 ^& N* z3 ^+ C3 E$ u

) i- ^6 R& {9 O% x+ Q7 n}
2 a" u9 m0 D7 X% I% X
: D1 \6 o' w6 ~( Q8 ifunction stopFade(id)2 {6 r0 X8 g& y9 d% W# i) f6 e
+ \/ n* ?+ F# K0 W6 f! v
{: ]$ h* ]% T1 I  e8 s% B

9 ?: X1 p; I/ O; w( P7 q        continuous[id] = false;+ n& d$ H" b9 l
9 b0 v% x/ u7 p9 r* X
}
8 }3 m9 [( Q* Q7 l, r5 d& L
  a) v: p5 _% `. c  l, Z& mfunction StartTimers()! }  p- [. f, y

6 B1 W+ b* m- a; c{        //set up an initial set of timers to start the shimmering effect8 j, ]  T) S- a6 X$ G7 B
8 K) f; f5 y3 |0 n
        for(id=0; id<numLinks; id++)
! z* M. m7 f! P& N- t" M, I
3 {4 J5 o- D/ [7 ~        {
6 H1 W% J  v3 J( R( u8 @" v" e  ^, m" W4 w
                t=setTimeout('startFade(' + id + ')', id*100);
; Y( X# v: P0 M3 d* S. K! P/ T8 m, w# v! ?# R
        }0 [7 o5 u1 {; X- F7 u
* f6 ?6 ^) Y' I" l& A+ Z' N1 D" j, D
}
5 ?, Y) {6 K& i3 x+ a7 h& w6 m8 d7 U
: g  G4 _  @; X//format = initLinks('mouse-over colour', 'number of links', 'fade-out colour')
# p( V) W: V5 s# G8 ?& u8 {9 ~2 ~. q
initLinks('#FF0000', 6, '#FFCC77');
6 x4 Q( j/ f2 ]5 s6 R) H; K# _; Q; _( F5 d" h; Q
//-->
' h$ G5 l) o  O0 U- F- G/ o# H. F! d4 d! V
</script>  y5 e2 Q. |! h; x6 }
<a class="links" id="0" onmouseover="stopFade('0');" onmouseout="continueFade('0');" href="http://7wind.com/">国际域名:58元
- c0 q- i  b$ @* a  Q% m  a$ @</a>5 Z* b' Q1 B2 O! t
<br>, S7 O6 O, v; z5 a
<a class="links" id="1" onmouseover="stopFade('1');" onmouseout="continueFade('1');" href="http://7wind.net/">国内域名:110元</a>
, D2 Y# T9 Z# n- f<br>; W& Y( t/ e# o2 |. I
<a class="links" id="2" onmouseover="stopFade('2');" onmouseout="continueFade('2');" href="http://7wind.net">新一代企业信息系统</a>, e8 ~2 B& ?  B& ^2 m
<br>        2 d2 ^; p; \. S4 @9 g& D
<a class="links" id="3" onmouseover="stopFade('3');" onmouseout="continueFade('3');" href="http://7wind.net">新一代网络商城</a>
  Z# z& J/ h4 G; u# o. Q8 }9 ?$ s& A<br>/ s: k2 v/ o, b* a- P
<a class="links" id="4" onmouseover="stopFade('4');" onmouseout="continueFade('4');" href="http://7wind.com/">全新的自助建站方式</a>, G" k2 D# O% f' W. ?
<br>* Q2 `& @8 _# L) [
<a class="links" id="5" onmouseover="stopFade('5');" onmouseout="continueFade('5');" href="http://www.webdevelopersjournal.com/">全新的设计理念</a>, @" k. R$ o. F  \4 i& e
<script language="javascript" type="text/javascript">
' }+ q# j/ {1 x7 q! A; I# H<!--3 P" N6 B% B( y, Z0 r
setTimeout('StartTimers()', 1000); //initial 1 second delay to allow page to load and ensure smooth shimmering' W, w" c0 C' O- c" x
//-->
- L7 m3 M# Q% R( i7 @) Z9 q! a" J) V</script>

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