本文介绍如何使用JavaScript控制网页中Div层的显示与隐藏,以及实现简单的浮动运动效果。主要方法包括通过修改CSS的display和visibility属性来控制层的可见性,并利用setTimeout函数实现定时关闭或持续运动。文章提供了具体的代码示例,涵盖基础显示控制和基于三角函数的随机运动逻辑,适用于漂浮广告等场景。
JavaScript控制网页层显示、隐藏与运动
在Web开发中,对页面元素的层级控制具有实际应用价值,例如用于实现漂浮广告等功能。此处简要探讨相关技术。
控制层的显示或隐藏
1. 控制层的显示或隐藏
实现这一功能主要有两种方法,本质上都是通过调整CSS样式来实现。
办法一:控制 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方法定期调用函数,每隔一定时间执行一次,从而实现层的持续运动效果。