返回列表 发帖

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

<script language="javascript" type="text/javascript">
2 ^& A7 Z; T& i+ D- T4 f' N) W<!--( }" p, G, |  h0 V- j; X4 y9 }
// convert a single digit (0 - 16) into hex# ~: ~8 V; r3 F# F8 z+ m* {9 g
function enHex(aDigit)
! M+ S' p# S- t/ j) x5 v. S{* y5 c# s  ^; g3 D- \# i% T7 F
    return("0123456789ABCDEF".substring(aDigit, aDigit+1))
. e4 ^! z8 M4 l8 P6 g2 z}" t9 I7 a& o. S9 K% u/ N( B
// convert a hex digit into decimal1 T) [- p0 @% K7 j$ [
function deHex(aDigit)
( |2 s  E: M9 m1 P3 c{8 H1 Q, V, y/ Y/ |( H# w  U6 E
    return("0123456789ABCDEF".indexOf(aDigit))7 x6 y3 e7 E: f- }
}
1 n. m; K. Z/ D; ~- v; I1 \/ y0 q* _$ f, _. k& i7 S+ N2 P
// Convert a 24bit number to hex
6 l$ z3 g0 _6 @# V/ p$ j: Lfunction toHex(n): D! o& Y$ S! C7 D7 @& p5 m5 K
{
" V/ C% m  y0 t* V& n( g! K, z4 }    return (enHex((0xf00000 & n) >> 20) +
( Q. X# T5 W# N. u/ l1 q            enHex((0x0f0000 & n) >> 16) +
5 e) c4 g8 P: q" ~: N, q            enHex((0x00f000 & n) >> 12) +
, p' O. Q- |! Z  z; L, S            enHex((0x000f00 & n) >>  8) +
9 c. K; ?  `; A9 B' ^8 z6 \1 x& A& a            enHex((0x0000f0 & n) >>  4) +* ^9 E' j$ d$ x  U5 m
            enHex((0x00000f & n) >>  0))
" l% V; i- z# E. Q* ?0 Y}
9 t5 x0 a+ I0 E, D4 W) I8 f// Convert a six character hex to decimal9 t- X! s0 d, x- ]/ {- I$ a
function toDecimal(hexNum)
$ N% ~, ~8 q# H" I& l; U2 F$ u$ w{
; A- Z6 x0 \# E- {* i  n           var tmp = ""+hexNum.toUpperCase()8 q. \0 k0 {' o! Y
    while (tmp.length < 6) tmp = "0"+tmp
0 q( _! X# l7 I           return ((deHex(tmp.substring(0,1)) << 20) +
. G" `" S4 ?. S* D                   (deHex(tmp.substring(1,2)) << 16) +   Y2 v; n- N$ E- v/ c
            (deHex(tmp.substring(2,3)) << 12) +: ]& G* _4 }! k
            (deHex(tmp.substring(3,4)) << 8) +
1 G3 s( B  o4 j2 \' t* `            (deHex(tmp.substring(4,5)) << 4) +/ |, T# D1 C9 W4 @8 U, U& x0 b
                   (deHex(tmp.substring(5,6))))
! A2 }3 T! j2 _7 t0 E; P, n}
  ]2 }# W3 D# K///////////////////Shimmering Links/////////////////////% S/ K4 U+ {+ K6 @6 @& c
//global variables4 e6 U5 Q0 G6 i% d* Z1 q
var hoverColour2 n5 x, L# ~: b" J  ^
var numLinks;
" Q9 }9 o. Q# |0 q- Y3 Bvar rate;
0 A- q) {. {% q: ]: ], l8 Xvar numFadeLevels;
$ e" I1 ?8 f4 X0 P. a7 E: _3 Dvar bgR;/ J' |* @- B* |' a; {5 z
var bgG;- H. U$ }7 m. `% S! b. a
var bgB;
3 I: ?- p; _: gvar currR;2 q! n! s% e' Z( U; e, r
var currG;
8 _0 V' Q4 G% p4 T' c" ~% G9 c4 Q# @var currB;
' N3 {1 C9 d3 Mvar count;! }7 D0 G4 B0 @
var fadeOut;
' X$ N! ^! Q* W. l& Avar continuous;
: X: f! Y2 R2 y) T0 Dvar newColour;. I* Y7 k& C6 |
var tID;+ u9 W1 Y' A7 @$ h, f
var redInterval;
. |% l7 f1 O' v# A9 Gvar greenInterval;
0 T* m- t0 {7 a/ G; w* L1 |; Rvar blueInterval;  M! q3 a& M) b# Q
function initLinks(mouseOverColour, numberOfLinks, fadeOutColour)0 Q/ w( D1 J- Z. |: c9 X
{7 d' V! l. c( L( l
        hoverColour = mouseOverColour;
: T( v: }' h6 F+ P2 v4 e9 f        numLinks = numberOfLinks;  O, _6 M$ u; b
        rate = 1;0 c' P3 _  S) m. p
        numFadeLevels = 30;" l( B9 W/ R$ F
        function initArray(theArray, length, val)2 u9 F9 j- Y$ u
        {: ^+ ?8 @' r9 `4 r7 C5 p
                for(i=0;i<length;i++)
+ M6 P+ s9 v, \8 E3 k+ c3 F* w' @                {! }% r" h: n0 p8 q
                        theArray = val;
8 y+ x6 f5 L1 k. T                }
  K( `4 ^: y, Z. T/ k4 D; s        }0 C: \: I3 @- k* n# v  ?" o
        bgR = '0000' + fadeOutColour.substring(1,3)) H/ Y8 B! S. X5 @9 {& a7 ]
        bgG = '0000' + fadeOutColour.substring(3,5)
1 M) Z. X* \! ~/ P7 z& E        bgB = '0000' + fadeOutColour.substring(5,7)2 v+ Q$ u' s# }: T; E( K+ ]& o
        currR = new Array(numLinks);* R& w  I' N: O( H
        currG = new Array(numLinks);
8 ?  P* Y  J, b6 {2 q! j        currB = new Array(numLinks);8 g. c0 W3 X  a) r
        count = new Array(numLinks);
. k( T. Q5 Y0 e5 ]' b8 H1 \5 ~$ a# `        fadeOut = new Array(numLinks);
+ R, T. R/ {. g/ F6 c        continuous = new Array(numLinks);# `+ c% u, ^7 X/ N
        newColour = new Array(numLinks);
0 m# ~6 u* P) D        tID = new Array(numLinks);
  V4 Z3 H. H/ O9 y, j        redInterval = toDecimal(bgR) / numFadeLevels;7 ]5 o! Q" w, @4 Y& `+ I8 M9 V
        greenInterval = toDecimal(bgG) / numFadeLevels;% U! W- m3 Q5 n. h; w! L
        blueInterval = toDecimal(bgB) / numFadeLevels;% X8 V6 q* G2 L# n
        initArray(currR,numLinks,0);( S2 f; {6 z) {2 |( L) ?
        initArray(currG,numLinks,0);
, q9 b3 n0 p6 m        initArray(currB,numLinks,0);
! P& L6 H3 _2 p. v        initArray(count,numLinks,0);
* Y% D: z( H, \/ l9 y8 E        initArray(fadeOut,numLinks,true);
$ ]& w4 x! K- }% j9 w9 j( K" S        initArray(continuous,numLinks,true);
8 g- N6 X& F( }& }8 m}        * W2 r9 T/ g8 @9 ?4 |8 {
function startFade(id)
4 f3 B9 z& V6 J: g, E{- U3 a3 M' z: y( t
        if(fadeOut[id] == true)
! a; z6 D! l2 ~' b& y        { /*move colour towards background colour (increment)*/( V4 K/ F9 F' p- Q+ A$ k  ^! I( H
                currR[id] += redInterval;0 _7 \5 c5 N& w& _3 @8 J
                currG[id] += greenInterval;
: o' W0 f' q: a3 g                currB[id] += blueInterval;
* ?8 B, R7 y7 k+ c                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);1 v$ L- G3 g+ T2 s- H
                if(++count[id] == numFadeLevels)/ \; ^# o6 J* j! M% [- a: R
                {
7 |" u  E) x3 s* X9 }+ d3 s- Z                        fadeOut[id] = false;
2 y6 Y4 [5 d5 y/ V) ]2 J$ m( i5 E                }5 S$ P" e$ M; E. i! V
        }+ z" f# ~  D! N; l0 R" s9 E6 O
        else8 K0 s* [9 Z4 ]( \& B4 _
        {
/ |9 S" l4 Y6 z. q/ d2 l9 I                currR[id] -= redInterval;
* j. ~! D; }' f9 O, @  |8 t% C& q. P7 |8 ^$ ^- C" B/ \% U
                currG[id] -= greenInterval;
! Y/ p( O% `; E8 S% ^# b% `& Z3 p/ P. P: ]( l! j" t2 m
                currB[id] -= blueInterval;" [, X0 |- `2 C: c8 H) @

8 |7 g4 z6 K# S4 k0 ^8 @, m; H                newColour[id] = '#' + (toHex(currR[id])).substring(4,6) + (toHex(currG[id])).substring(4,6) + (toHex(currB[id])).substring(4,6);
/ a. ]. J- _( b' ^* s/ x* b2 M3 q$ H% w. h
                if(--count[id] == 0)
, I, z% ?9 W' y1 a" ~: ?* ?2 a7 p4 o' ]/ c* S9 ~. T0 W2 f7 c
                {- L/ L4 M# }+ E

' ]5 x. p7 ?8 @; \" `7 {0 ]                        fadeOut[id] = true;9 h" `+ D0 w" O3 O

: Z9 V/ @2 e" @3 y3 j                }
! _$ {4 q4 D( q1 U) h$ v6 i9 u
4 @+ e# w% O, j2 R& N        }+ t7 O- [) |% J* `
% v% _' R  h5 p, C& Z$ J* T
        if(continuous[id] == true)1 ?( M: ?: M# ~: f, i! M: a

7 E) `* Q2 B+ `* k        {
6 s3 _/ ?1 u- S
1 {; K' p' B/ P3 h                document.getElementById(id).style.color = newColour[id];                6 Z' Y6 J" y7 W( h3 J
: M1 ^9 v" s5 t5 n5 M
        }* C3 p7 [6 I7 ^& f

8 U8 j3 B  u' j2 h) Y7 P        else0 @% G/ s1 a1 V7 x. k+ K
! x* [+ m( m) v- b2 H- w
        {( C$ r) k2 B( G# B

, G2 n+ E, `2 U2 V# |% s: Z                document.getElementById(id).style.color = hoverColour;
: F5 z( @2 B# @. F) z2 I: @+ p! I6 B' ]- d0 |, e% W
        }4 B3 g& ]% j) y$ B9 Z2 C# y

/ w+ e& {  B" h6 F        clearTimeout(tID[id]);
" \0 F9 n4 |/ G" ?, m0 \0 c; w0 z
        tID[id]=setTimeout('startFade(' + id + ')', rate);8 R' c; A) e3 w4 V' B
' N1 e6 Y( d! t9 f! L: |- V
}6 h3 E' i+ X4 a( W- m
. x: h1 [8 B# V& y- Q$ D# s
function continueFade(id)9 E% w, C, O& c4 w% p1 C, a( I

8 B2 L$ H) O9 M" p1 \; }1 q& V# L1 T{( ^) O  Z! |! y6 w# U2 V
+ y3 [& O4 L& r2 u2 Q7 H! O
        continuous[id] = true;9 C( g0 k. s6 b1 W
! V3 F# ?3 H* b2 ]3 H' P& h1 t
}7 a- @% q! K; g) @

' o  O! k( z: `: }* [9 n- N7 n/ Yfunction stopFade(id)
/ F% k. G- p# L9 T* }; s2 k' Y: ?5 _5 Q$ Q* E
{
" X. w( `: P) p7 [) M* w
6 v8 @* F4 h( I( x5 B        continuous[id] = false;" K, L( G1 r6 U' ?

% o( H2 q+ s* [* ?" z, I) {}5 E+ L) }  x3 K3 g  l$ X
  r' M9 W, j& E7 S/ Z9 l
function StartTimers()
5 A0 U$ I9 `2 b
1 ?. H4 N, q% ]# `5 x{        //set up an initial set of timers to start the shimmering effect
+ a$ L( N& q! ?2 F! {( B* n. Q' g( |4 o3 X4 y
        for(id=0; id<numLinks; id++)+ E$ r, _" M1 t' J/ M

% n% b; d" H) O9 p  l        {
0 o4 r% ?6 @6 x4 z5 d! s" d3 S" {3 Z- j1 D/ V$ _( Z
                t=setTimeout('startFade(' + id + ')', id*100);
) J2 K2 O; [# W' x: c4 x* M. ]
* Z. p& J: x  @# X$ _/ B        }$ B! d& J& N5 j9 {+ M# w2 ~8 ^+ K

7 y* G! E) Y  o}
  V: a& o& z! \
- Q( Z9 P0 h4 A! Q# f//format = initLinks('mouse-over colour', 'number of links', 'fade-out colour')* C* t7 q8 _1 G) w- k
. [; ^3 o( G/ x, a' [( q
initLinks('#FF0000', 6, '#FFCC77');
; ]% e+ i8 q/ Q7 o
* H' R6 ]9 j3 y3 h% k8 M//-->2 D  ~( P* d' l8 f% o( u, Y
; n) d% ?9 X5 Z7 k: R4 W( o* |
</script>6 m% c! H; s. g: e
<a class="links" id="0" onmouseover="stopFade('0');" onmouseout="continueFade('0');" href="http://7wind.com/">国际域名:58元
2 l& j# w' u& Q! F* ^2 q</a>
3 |# |5 c5 t- ?$ c1 H% y<br>
3 h& |# ^3 Q! ^8 t9 x<a class="links" id="1" onmouseover="stopFade('1');" onmouseout="continueFade('1');" href="http://7wind.net/">国内域名:110元</a>$ G) n* V- V- G3 ]) Q% h, f9 j
<br>8 H5 S+ c* C5 z/ H. L: S2 o* Z) e
<a class="links" id="2" onmouseover="stopFade('2');" onmouseout="continueFade('2');" href="http://7wind.net">新一代企业信息系统</a>% |# c# J  m5 s) N5 U, n6 t* [! T
<br>        3 X6 [6 D' t, w- Y/ v/ ?1 i# t# o
<a class="links" id="3" onmouseover="stopFade('3');" onmouseout="continueFade('3');" href="http://7wind.net">新一代网络商城</a>* j/ z5 @. u* \
<br>1 }. u3 G9 D" G/ |# W
<a class="links" id="4" onmouseover="stopFade('4');" onmouseout="continueFade('4');" href="http://7wind.com/">全新的自助建站方式</a>" k5 ?. T) s$ m2 @
<br>
6 A: g6 t( y. h9 l( Q<a class="links" id="5" onmouseover="stopFade('5');" onmouseout="continueFade('5');" href="http://www.webdevelopersjournal.com/">全新的设计理念</a>8 P0 L- G" x5 J* T% b8 `
<script language="javascript" type="text/javascript">
: Z5 J; q$ r" {<!--
( S, [; c* a6 u6 z. DsetTimeout('StartTimers()', 1000); //initial 1 second delay to allow page to load and ensure smooth shimmering8 l# a# d) s# d# `7 V$ B  A  ]8 `
//-->
6 M, A5 ]' t8 \% C6 t3 R</script>

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