javascript中对对层的控制

  层的开发在实际应用中比较重要,比如漂浮广告等等,我这里简单探讨一下。

  1.  控制层的显示或隐藏

  两种办法,其实都是控制样式的。

  办法一:控制 display 属性

  <script language="javascript">

  function show(status)

  {

  document.getElementById("div1").style.display = status;

  }

  </script>

  <div id="div1" style="left:10px;top:200px;width:250;height:100;z-index:2;">

  这是一层,能看见吗,呵呵.

  </div>

  <a href=# onClick="show('block');">显示</a>

  <a href=# onClick="show('none')">关闭</a>

  办法二 控制 visibility 属性

  <script language="javascript">

  function show(status)

  {

  document.getElementById("div1").style.visibility = status;

  }

  <div id="div1" style="left:10px;top:200px;width:250;height:100;z-index:2;visibility=hideen;">

  这是一层,能看见吗,呵呵.

  </div>

  <a href=# onClick="show('visible);">显示</a>

  <a href=# onClick="show('hidden')">关闭</a>

  如果要控制层定时关闭的话,可以加上:

  function setTimeStart()

  10 {

  11     window.setTimeout(hiddenTips,4000);

  12 }^

  </script>

  上面代码就是利用setTimeout方法来控制4秒后关闭层。

  2.  控制层的运动,类似于浮动广告

  主要就是通过控制层样式中的top和left属性的值来运动,通过随机生成不同的值,看起来就象在运动一样。

  <script language="javascript">

  var a=200, b=100;

  var c=0.1;

  var d=5;

  var t=0;

  function float_1()

  {

  var random1 = 100*Math.random();

  var random2 = 100*Math.random();

  var float_1 = document.all ? document.all.float_1.style : document.float_1;

  float_1.left = Math.round(a*Math.cos(t)*Math.cos(t/d)+a)+random1;

  float_1.top = Math.round(b*Math.sin(t)+b)+random2;

  t+=c;

  setTimeout("float_1()", 500);

  }

  </script>

  </head>

  <body onLoad="float_1()"><div id="float_1" style="position:absolute;width:200;height:100;z-index:2;visibility:visible">

  让我动起来。

  </div>

  </body>

  通过 setTimeout方法进行调用,每隔多少秒运行一次,达到一直运动的目的。