| 自学动态Html---教程六 文章来源:中国石油大学         对于Html的<div></div>标志对,您可能使用的甚少,当它在动态Html的设计中却非常有用,我们可以用它的样式属性中的position属性来定义文本显示位置的方式,包括相对位置(position:"relative")和绝对位置(position:"absolute"),然后在用样式属性中的top、left、heigh、width属性我们先来确定文本显示的位置。很多书上把对<div></div>标志对的控制叫做对“层”的控制。下面是一个简单的举例。 例17 重叠两行文本而得到的阴影效果<html>
 <head>
 <title>DHtml举例17</title>
 <style><!--
 body {font-size:9pt}
 .redtext {
 color:red;
 position:absolute;
 top:100;
 left:100;
 }
 .graytext {
 color:gray;
 position:absolute;
 top:101;
 left:102;
 }
 }
 -->
 </style>
 <script language="JavaScript">
 </script>
 </head>
 <body>
 <p><br>
 </p>
 <div class="graytext"><b>您最喜欢制作主页吗?</b></div>
 <div class="redtext"><b>您最喜欢制作主页吗?</b></div>
 </body>
 </html>
  和以前的教程中介绍的其它样式单的属性相似,我们同样可以用JavaScript来对<div></div>标志对中的文本进行动态控制。下面的例子将使文本在屏幕上移动。 例18 文本在屏幕中移动<html>
 <head>
 <title>DHtml举例18</title>
 <style><!--
 body {font-size:9pt}
 .move {
 cursor:hand;
 position:absolute;
 visibility:hidden;
 height:60;
 width:60;
 color:yellow;
 border:blue 1px solid;
 background-color:rgb(147,0,0);
 }
 -->
 </style>
 <script language="JavaScript">
 var all=document.all;
 var flag=1;//变量flag用来控制“执行或终止执行函数Move()”
 var act;
 var xhd=0;//变量xhd为信号灯,用于控制“层”的移动方向
 function MoveStamp(){all.stamp.style.top=document.body.offsetTop;//对象stamp的top属性等于对象body的offsetTop值
 all.stamp.style.left=document.body.offsetLeft;
 all.stamp.style.visibility = "visible";
 if(flag==1)
 {
 act = window.setInterval("Move()",50);//执行函数Move()
 flag=0;
 }
 else
 {
 window.clearInterval(act);//终止执行函数Move()
 all.stamp.style.visibility = "hidden";//隐藏对象stamp
 flag=1;
 }//if
 }//function
 function Move(){if(all.stamp.style.pixelLeft>=document.body.offsetLeft+350) xhd=1;
 if(all.stamp.style.pixelLeft<=document.body.offsetLeft) xhd=0;
 if(xhd==0)
 {
 //对象stamp往右下方移动
 all.stamp.style.pixelLeft+=5;
 all.stamp.style.pixelTop+=5;
 }
 else
 {
 //对象stamp往左上方移动
 all.stamp.style.pixelLeft-=5;
 all.stamp.style.pixelTop-=5;
 }//if
 }//function
 </script></head>
 <body onclick="MoveStamp()">
 <p align="center">用鼠标单击一下会有效果出现,再单击一下则效果消失,如此反复……</p>
 <div id="stamp" class="move"><p valign="middle" align="center"><br><b>我要在天空中飞翔<b></p></div>
 </body>
 </html>
  语句act = window.setInterval("Move()",50)调用了JavaScript本身具有的函数,它用于在间隔特定时间后(本例中为50毫秒)执行特定的函数(本例中为Move()函数),然后将返回值赋给一个变量(本例中为变量act),要想终止此特定函数的执行,用语句window.clearInterval(act)即可。此例是一个很不错的例子,希望您能仔细阅读,以便以后编写动态网页时能够得心应手。  此例的效果如下:拖动流动条到屏幕的最上方,用鼠标单击一下屏幕会有效果出现,再单击一下则效果消失,如此反复……
 [返回] |