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

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

<script language="javascript" type="text/javascript">
. M/ u. N% y2 V* X, u7 A' S<!--8 z; p. P  N! H8 j) m2 d7 y
// convert a single digit (0 - 16) into hex
: d# }7 X5 U. B% Z- @+ A) p4 Jfunction enHex(aDigit)9 x0 Z' L6 x6 [% B
{5 R+ v1 i. C  c' W2 V
    return("0123456789ABCDEF".substring(aDigit, aDigit+1)), ]2 U) f9 u$ F% y0 X  N) ]
}$ \1 I. i5 ~, v0 _* K2 b$ k- L. \
// convert a hex digit into decimal
. ?9 x% [1 r3 a5 g* I6 `6 sfunction deHex(aDigit)/ ?7 _6 i  O# [' b
{
" h% ?/ a: J( m    return("0123456789ABCDEF".indexOf(aDigit))
' N8 U& y) y1 B9 O8 p: G" C- p0 s}) z, W3 T  {/ @) o
8 g" e+ ~6 Y1 o2 q5 K) ~
// Convert a 24bit number to hex
6 J8 Y( D3 @1 m/ p1 F8 s# jfunction toHex(n)- R  s6 c$ Q( f( ]0 B
{0 v1 C  e) S  p! e
    return (enHex((0xf00000 & n) >> 20) +
4 a' c7 G5 j+ |0 ~            enHex((0x0f0000 & n) >> 16) +" }/ Y& u# v/ k' O4 j
            enHex((0x00f000 & n) >> 12) +
6 j  S* x2 \; O( O- u6 i            enHex((0x000f00 & n) >>  8) +9 c1 Z3 Z5 N3 E" @6 x5 k! k4 I
            enHex((0x0000f0 & n) >>  4) +
# p% E* t( V0 w% I% r8 n            enHex((0x00000f & n) >>  0))6 K$ I% G. \0 H  t
}& B3 D% ]" j3 z- G
// Convert a six character hex to decimal* o2 V' Y+ o: t
function toDecimal(hexNum)& t; |' N0 q+ {9 k, J- w9 d
{
8 T2 ]( g9 M8 G5 F! P           var tmp = ""+hexNum.toUpperCase()
- T1 p$ r4 C# I3 U3 O    while (tmp.length < 6) tmp = "0"+tmp, S) W! a6 f8 W; m9 `
           return ((deHex(tmp.substring(0,1)) << 20) +9 n6 T/ z8 m. g1 x
                   (deHex(tmp.substring(1,2)) << 16) +
5 Z9 ~8 O7 C2 M! O  R! v  Q            (deHex(tmp.substring(2,3)) << 12) +
' w1 @/ p# N4 H            (deHex(tmp.substring(3,4)) << 8) +
& l) u- M' i( ?% l- G1 P            (deHex(tmp.substring(4,5)) << 4) +  |4 x5 `: {$ z
                   (deHex(tmp.substring(5,6))))& ]2 }6 ?5 Q: S8 I. h( C7 V1 @
}0 J1 T, n2 V' Z1 D, G# M' p
///////////////////Shimmering Links/////////////////////+ J' y1 B1 w; |5 ^
//global variables" z$ ?4 q+ r' K: E+ i9 c8 g6 k
var hoverColour; D. }. o4 \9 Q1 P
var numLinks;# O) S+ R- X5 P# j
var rate;
5 x- y6 E' {  o% Z( Gvar numFadeLevels;/ x' E) k9 c2 q- w$ c
var bgR;) ]! K( o5 u* d' R* t0 ]$ c! e
var bgG;
3 z& q0 j8 ]* i) Z# Zvar bgB;  t! x' J: V& s' ]9 U
var currR;1 }* R$ Y9 G1 O9 f  G2 Q* R  M
var currG;. b  ]$ y4 V1 C' ~7 Y3 N/ W* u2 S3 O
var currB;& m  z3 \% H! ?% c- H2 ]+ O: X) X
var count;
# l; ^  g3 [8 ^- @. Bvar fadeOut;6 L- M) y: y, |) [- P
var continuous;
- I+ j8 r# D, w" ?( C+ zvar newColour;
* y* W) l9 w; k) g: k* }. V( xvar tID;
) Z) u1 m2 p( P9 Y( ?2 E1 ]var redInterval;
: M# `$ O) X& o  I( g$ d3 Gvar greenInterval;" Z9 B" e2 s2 V& K5 ^2 U: P
var blueInterval;) Z- c. @. Y8 D1 i' ?! _
function initLinks(mouseOverColour, numberOfLinks, fadeOutColour)- a1 n& m& p. z
{4 {$ V/ t0 u* h7 Z3 Y
        hoverColour = mouseOverColour;- ^7 O( C& y: i# n9 r+ H' I4 i
        numLinks = numberOfLinks;
) T# e. t( r9 h* ~$ _# Y        rate = 1;! E$ q4 e0 g: |
        numFadeLevels = 30;! [( \$ [( L& X& x
        function initArray(theArray, length, val)
5 L/ f; e( K- [! h        {
* C0 P" G$ V& A' t, C: r                for(i=0;i<length;i++)
+ X7 R2 G4 C. s1 f                {6 S$ a* b' R: L. F! }  X
                        theArray = val;
  \$ s2 W+ B- @. T                }6 h: B9 Q3 p+ q  U4 r
        }
6 Z# d5 ]3 X5 H; b. h7 ?3 J; m4 X        bgR = '0000' + fadeOutColour.substring(1,3)! |3 O: w" v5 W& B' G# i& e
        bgG = '0000' + fadeOutColour.substring(3,5)7 ?- r, ?* m# W+ q
        bgB = '0000' + fadeOutColour.substring(5,7)
+ F* q! _8 q3 e' Z: w' _1 Q        currR = new Array(numLinks);; o, T$ ^# ~3 v8 ]3 Z6 z: j
        currG = new Array(numLinks);  T! d5 C; H3 \( v5 D
        currB = new Array(numLinks);
$ j8 W3 x4 o" N# V# D& ]- }& T5 N        count = new Array(numLinks);2 D" d4 G- z8 Q, D% m
        fadeOut = new Array(numLinks);
# J8 F% h- O0 D9 q) G) k8 K        continuous = new Array(numLinks);2 X" N4 @. [' u2 c+ n
        newColour = new Array(numLinks);  x; u# I- l5 m/ G% [0 g
        tID = new Array(numLinks);
' Q7 V' I- ~% F' H1 `        redInterval = toDecimal(bgR) / numFadeLevels;/ W4 m" v! ]  F$ B- `2 K0 S
        greenInterval = toDecimal(bgG) / numFadeLevels;
- B% s4 M7 [  Z. y& o* ^) |        blueInterval = toDecimal(bgB) / numFadeLevels;: T6 i. g  o0 i4 d7 J. U
        initArray(currR,numLinks,0);
3 j; |3 J* t% W& B; m* }        initArray(currG,numLinks,0);
8 `" P0 C& b8 \4 c+ B3 V1 j        initArray(currB,numLinks,0);5 t" z- U" B6 G1 X1 X
        initArray(count,numLinks,0);
: F& }8 Z6 `0 l# X) D. q- P, w% S4 H        initArray(fadeOut,numLinks,true);
. A( K* `/ l' O" N! ]. ?& k- d        initArray(continuous,numLinks,true);* y7 }  V/ C' u% m: m" h3 a
}          P. b4 _6 q5 P
function startFade(id)
( [$ Z) n7 u/ b( ^- c{# p$ u  a' i/ Y1 J; i/ h
        if(fadeOut[id] == true)
& v# a4 e8 H2 B' ]; I$ x        { /*move colour towards background colour (increment)*/' F+ ~; b1 i) }0 G
                currR[id] += redInterval;9 A/ Z; Y7 S9 i9 A6 b
                currG[id] += greenInterval;+ n0 T0 L9 o. H" p
                currB[id] += blueInterval;
8 t6 ^6 h9 k. B3 o% S                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);6 O% _8 O. F# W8 F+ j
                if(++count[id] == numFadeLevels)5 s6 d6 e0 F5 U( m$ m0 k
                {
3 |( ~0 \: [7 U7 \; \! C- w1 K3 _                        fadeOut[id] = false;
, b* [# c: A" u, o" Z5 g                }
1 S' M9 L' B" B" W2 `/ h4 a        }) U3 R/ z# l) e0 H$ M$ R3 o8 a$ M
        else9 d5 _# W8 I# b% J* u4 d1 x# P! `8 b
        {) o( S( r- L1 X* c1 _. M9 L
                currR[id] -= redInterval;$ C& m7 q- P% Z2 ~

- M0 ]! G4 k  |+ A                currG[id] -= greenInterval;
* c  `9 T7 k' L/ j2 u5 ]5 C  m4 F7 v! L, f; a9 m6 |- p
                currB[id] -= blueInterval;
4 Z5 b6 b6 y, c* y. b5 J+ [) g# X$ x/ r- W0 T/ s- _* ^- B$ S
                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);' `  v9 N- d6 V4 R8 c/ O2 j
' k5 z/ }3 U/ L6 s, \% r
                if(--count[id] == 0)
- v3 T. `: p7 x% q! f! U; j( n( W/ |
                {
* ?4 C- o+ i; @5 h/ r
, z  O5 T9 n0 k                        fadeOut[id] = true;
, T0 {' d9 P( {, e7 M" y% ~1 r0 Q2 S) `5 ^4 b2 M
                }$ M9 R9 j2 F9 h( ^
' b* D7 l" l# T2 j
        }( {  D: ~5 y6 Y& O) Q

' j# h! N# x9 s: ?        if(continuous[id] == true)
* s$ n. l& D0 I; g' M$ L5 D) F' b; a- V8 \9 S
        {
1 G: N9 P& t2 Q' [) e: G+ U% k% i$ J1 k, _# g2 }6 ^5 h7 U- T
                document.getElementById(id).style.color = newColour[id];               
1 V! \5 @) I7 h, H8 G$ f% y/ C
% h% J8 t5 Q8 q& \+ x) M) N        }9 G2 f: B  s1 X% E: `; I
! o, C" L$ @/ g0 e5 Y4 Q
        else
. {7 B  Q- s  _# J5 `6 U1 J
! H, i) `. V' v% V/ `        {4 V: b$ @6 l. @% Q9 L; f
, n7 |$ a% ]. S# q: C% i
                document.getElementById(id).style.color = hoverColour;, U. Q$ r: F2 I0 e% T# H* W& {

- t7 k1 X4 [6 p0 }        }
2 V5 f' }. n4 Q$ d$ @0 t) C5 O! u+ C
" J! g5 y9 t6 P9 [1 D( S( K        clearTimeout(tID[id]);
: H' ^0 r2 ^. n( @0 }. e! Z3 O4 O. y$ ]0 B' d: f2 V
        tID[id]=setTimeout('startFade(' + id + ')', rate);) Y8 ]; I9 U# |! R

3 Q- t6 M4 H& }; H( c% x& V) _}
' Z6 E2 n1 g1 A, }3 R; i7 S  a: H7 r( c) Z8 ^" k# y! B  o- B! S
function continueFade(id)
* Y, ?$ M- v4 @* E
: C7 l6 O$ ^9 b4 S2 B{
% f' Y6 h+ w. e+ X) k
5 m+ u* a/ c! }9 E        continuous[id] = true;
4 U% ]* D4 u/ l! a+ X6 k/ [/ G+ I2 t0 ?
}
/ W$ X7 I, W/ e: }7 Q3 d4 m$ s2 S
function stopFade(id)
$ k! p" i. x1 f6 b+ X; d' t! u/ {# m7 f. [6 y
{2 O7 h2 D4 H  y0 |2 l% k

+ [0 R( L2 f" f        continuous[id] = false;
3 N1 M0 d( Y: \$ l2 _) `* b. r
  H' I4 B- _0 U. t}+ ]8 v) Z7 V, U: c3 l6 G

, J+ q% W8 F+ i* ^8 ~/ ?! \function StartTimers()
% f4 m/ I' z1 g6 b8 a( I0 \
6 A' g, G) q3 j{        //set up an initial set of timers to start the shimmering effect9 {% C' T4 y) Q" c

. W: N* |" s$ D        for(id=0; id<numLinks; id++)
$ U: D/ ^4 i" }( ], ~4 L; {5 y+ g$ z4 x
        {# N; h% T4 M# t# q' p1 q
3 f! }+ ]' e6 X. _+ t
                t=setTimeout('startFade(' + id + ')', id*100);
7 c# ~# w  c  T3 m, k: C0 [5 i" M# a& |. {
        }
4 \$ t, |( S5 ]/ J$ ?
" ?: U# @' c6 V6 I& T8 B2 f}
( M1 `0 D  h; H  D9 `3 r
/ K1 @+ a, S, s# c3 t3 u//format = initLinks('mouse-over colour', 'number of links', 'fade-out colour')
. ]  N# j% p9 ?, P3 Z) Z+ }
- X: m3 B) w: [) l1 BinitLinks('#FF0000', 6, '#FFCC77');% J; I3 K9 J" X! h8 @8 h

9 e: A  \1 @  V//-->! t" v* ?: \" ~/ Z) j1 w
4 [! v+ q) V  s) {9 R! V4 t# M
</script>
+ v0 m# [$ f; w2 `) H<a class="links" id="0" onmouseover="stopFade('0');" onmouseout="continueFade('0');" href="http://7wind.com/">国际域名:58元
. S- Z2 V! V2 x7 D4 D</a>$ a1 K" J! t6 d
<br>
, V6 D& R7 m* B1 C5 u6 @- h<a class="links" id="1" onmouseover="stopFade('1');" onmouseout="continueFade('1');" href="http://7wind.net/">国内域名:110元</a>
3 m* M" F9 u" Q8 ?! }. w! e% l<br>
, d1 M4 j$ l7 D9 j! U<a class="links" id="2" onmouseover="stopFade('2');" onmouseout="continueFade('2');" href="http://7wind.net">新一代企业信息系统</a>
& s  x6 E6 m, i, q<br>        0 j. B9 ?3 S: w
<a class="links" id="3" onmouseover="stopFade('3');" onmouseout="continueFade('3');" href="http://7wind.net">新一代网络商城</a>( I' O; r" o2 B8 v3 Y! L
<br>
+ s2 O) e: o6 n0 ^* g. ]<a class="links" id="4" onmouseover="stopFade('4');" onmouseout="continueFade('4');" href="http://7wind.com/">全新的自助建站方式</a>
. O5 `# U* t% S, t<br>
) S6 r- I# ?  Y4 g& B<a class="links" id="5" onmouseover="stopFade('5');" onmouseout="continueFade('5');" href="http://www.webdevelopersjournal.com/">全新的设计理念</a>2 g9 y- x3 f" Q& [
<script language="javascript" type="text/javascript">: K8 F6 j+ P: a- y5 ~) G! W, N6 r
<!--
+ L2 Q0 W: Q: s  o/ E4 B9 J# X% I8 HsetTimeout('StartTimers()', 1000); //initial 1 second delay to allow page to load and ensure smooth shimmering2 Q" P) W: Z& O: K9 q
//-->
8 E9 n" g! @: }  P</script>

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