字符从天而降

简介 文字从页面顶部掉下来,作为提醒脚本可是非常酷
例子演示 很 好 玩 吧 ! 有 没 有 吓 一 跳 ?YES!


使用说明

步骤一: 请将下面的原代码插入到<head>和</head>之中 ,

选定以下所有代码
<SCRIPT language="JavaScript" FPTYPE="dynamicanimation8">

<!--

dynamicanimAttr = "dynamicanimation8"

 animateElements = new Array()

 currentElement = 0

 speed = 0

 stepsZoom = 8

 stepsWord = 8

 stepsFly = 12

 stepsSpiral = 16

 steps = stepsZoom

 step = 0

 outString = ""

 function dynAnimation8()

 {

  var ms = navigator.appVersion.indexOf("MSIE")

  ie4 = (ms>0) && (parseInt(navigator.appVersion.substring(ms+5, ms+6)) >= 4)

  if(!ie4)

  {

   if((navigator.appName == "Netscape") &&

     (parseInt(navigator.appVersion.substring(0, 1)) >= 4))

   {

    for (index=document.layers.length-1; index >= 0; index--)

    {

      layer=document.layers[index]

      if (layer.left==10000)

        layer.left=0

    }

   }

   return

  }

  for (index=document.all.length-1; index >= document.body.sourceIndex; index--)

  {

   el = document.all[index]

   animation = el.getAttribute(dynamicanimAttr, false)

   if(null != animation)

   {

    if(animation == "dropWord" || animation == "flyTopRightWord" || animation == "flyBottomRightWord")

    {

     ih = el.innerHTML

     outString = ""

     i1 = 0

     iend = ih.length

     while(true)

     {

      i2 = startWord(ih, i1)

      if(i2 == -1)

       i2 = iend

      outWord(ih, i1, i2, false, "")

      if(i2 == iend)

       break

      i1 = i2

      i2 = endWord(ih, i1)

      if(i2 == -1)

       i2 = iend

      outWord(ih, i1, i2, true, animation)

      if(i2 == iend)

       break

      i1 = i2

     }

     document.all[index].innerHTML = outString

     document.all[index].style.posLeft = 0

     document.all[index].setAttribute(dynamicanimAttr, null)

    }

    if(animation == "zoomIn" || animation == "zoomOut")

    {

     ih = el.innerHTML

     outString = "<SPAN " + dynamicanimAttr + "="" + animation + "" style="position: relative; left: 10000;">"

     outString += ih

     outString += "</SPAN>"

     document.all[index].innerHTML = outString

     document.all[index].style.posLeft = 0

     document.all[index].setAttribute(dynamicanimAttr, null)

    }

   }

  }

  i = 0

  for (index=document.body.sourceIndex; index < document.all.length; index++)

  {

   el = document.all[index]

   animation = el.getAttribute(dynamicanimAttr, false)

   if (null != animation)

   {

    if(animation == "flyLeft")

    {

     el.style.posLeft = 10000-offsetLeft(el)-el.offsetWidth

     el.style.posTop = 0

    }

    else if(animation == "flyRight")

    {

     el.style.posLeft = 10000-offsetLeft(el)+document.body.offsetWidth

     el.style.posTop = 0

    }

    else if(animation == "flyTop" || animation == "dropWord")

    {

     el.style.posLeft = 0

     el.style.posTop = document.body.scrollTop-offsetTop(el)-el.offsetHeight

    }

    else if(animation == "flyBottom")

    {

     el.style.posLeft = 0

     el.style.posTop = document.body.scrollTop-offsetTop(el)+document.body.offsetHeight

    }

    else if(animation == "flyTopLeft")

    {

     el.style.posLeft = 10000-offsetLeft(el)-el.offsetWidth

     el.style.posTop = document.body.scrollTop-offsetTop(el)-el.offsetHeight

    }

    else if(animation == "flyTopRight" || animation == "flyTopRightWord")

    {

     el.style.posLeft = 10000-offsetLeft(el)+document.body.offsetWidth

     el.style.posTop = document.body.scrollTop-offsetTop(el)-el.offsetHeight

    }

    else if(animation == "flyBottomLeft")

    {

     el.style.posLeft = 10000-offsetLeft(el)-el.offsetWidth

     el.style.posTop = document.body.scrollTop-offsetTop(el)+document.body.offsetHeight

    }

    else if(animation == "flyBottomRight" || animation == "flyBottomRightWord")

    {

     el.style.posLeft = 10000-offsetLeft(el)+document.body.offsetWidth

     el.style.posTop = document.body.scrollTop-offsetTop(el)+document.body.offsetHeight

    }

    else if(animation == "spiral")

    {

     el.style.posLeft = 10000-offsetLeft(el)-el.offsetWidth

     el.style.posTop = document.body.scrollTop-offsetTop(el)-el.offsetHeight

    }

    else if(animation == "zoomIn")

    {

     el.style.posLeft = 10000

     el.style.posTop = 0

    }

    else if(animation == "zoomOut")

    {

     el.style.posLeft = 10000

     el.style.posTop = 0

    }

    else

    {

     el.style.posLeft = 10000-offsetLeft(el)-el.offsetWidth

     el.style.posTop = 0

    }

    el.initLeft = el.style.posLeft

    el.initTop = el.style.posTop

    animateElements[i++] = el

   }

  }

  window.setTimeout("animate();", speed)

 }

 function offsetLeft(el)

 {

  x = el.offsetLeft

  for (e = el.offsetParent; e; e = e.offsetParent)

   x += e.offsetLeft;

  return x

 }

 function offsetTop(el)

 {

  y = el.offsetTop

  for (e = el.offsetParent; e; e = e.offsetParent)

   y += e.offsetTop;

  return y

 }

 function startWord(ih, i)

 {

  for(tag = false; i < ih.length; i++)

  {

   c = ih.charAt(i)

   if(c == '<')

    tag = true

   if(!tag)

    return i

   if(c == '>')

    tag = false

  }

  return -1

 }

 function endWord(ih, i)

 {

  nonSpace = false

  space = false

  while(i < ih.length)

  {

   c = ih.charAt(i)

   if(c != ' ')

    nonSpace = true

   if(nonSpace && c == ' ')

    space = true

   if(c == '<')

    return i

   if(space && c != ' ')

    return i

   i++

  }

  return -1

 }

 function outWord(ih, i1, i2, dyn, anim)

 {

  if(dyn)

   outString += "<SPAN " + dynamicanimAttr + "="" + anim + "" style="position: relative; left: 10000;">"

  outString += ih.substring(i1, i2)

  if(dyn)

   outString += "</SPAN>"

 }

 function animate()

 {

  el = animateElements[currentElement]

  animation = el.getAttribute(dynamicanimAttr, false)

  step++

  if(animation == "spiral")

  {

   steps = stepsSpiral

   v = step/steps

   rf = 1.0 - v

   t = v * 2.0*Math.PI

   rx = Math.max(Math.abs(el.initLeft), 200)

   ry = Math.max(Math.abs(el.initTop), 200)

   el.style.posLeft = Math.ceil(-rf*Math.cos(t)*rx)

   el.style.posTop = Math.ceil(-rf*Math.sin(t)*ry)

  }

  else if(animation == "zoomIn")

  {

   steps = stepsZoom

   el.style.fontSize = Math.ceil(50+50*step/steps) + "%"

   el.style.posLeft = 0

  }

  else if(animation == "zoomOut")

  {

   steps = stepsZoom

   el.style.fontSize = Math.ceil(100+200*(steps-step)/steps) + "%"

   el.style.posLeft = 0

  }

  else

  {

   steps = stepsFly

   if(animation == "dropWord" || animation == "flyTopRightWord" || animation == "flyBottomRightWord")

    steps = stepsWord

   dl = el.initLeft / steps

   dt = el.initTop / steps

   el.style.posLeft = el.style.posLeft - dl

   el.style.posTop = el.style.posTop - dt

  }

  if (step >= steps)

  {

   el.style.posLeft = 0

   el.style.posTop = 0

   currentElement++

   step = 0

  }

  if(currentElement < animateElements.length)

   window.setTimeout("animate();", speed)

 }



//-->





</SCRIPT>

步骤二: 请将下面的原代码插入到<body>下面 ,
选定以下所有代码
<p dynamicanimation8="dropWord"

style="position: relative !important; left: 10000 !important" align="center"><font size="3" color="#ee00FF">很 好 玩 吧 ! 有 没 有 吓 一 跳 ?<font size="7"><b><font face="Arial, Helvetica, sans-serif" color="#FF0000">YES!

 </font></b></font></font></p>

步骤三: , 把<body>中的内容改为:
选定以下所有代码
<body bgcolor="#fef4d9" onload="dynAnimation8()">