蓝森林首页 | 返回主页 | 本站地图 | 站内搜索 | 联系信箱 |
 您目前的位置:首页 > 自由软件 > 技术交流 > 应用编程


    

蓝森林 http://www.lslnet.com 2006年8月25日 8:28

求助!!在线等:关于层的问题。

1。如何在1秒中后让层隐藏??
2。如何点击超连接时让层隐藏??
求助啊!

第二个问题

可以在<a>里面添加onclick行为,让层隐藏起来'
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}
//-->
</script>

</head>

<body>
<div id="Layer1" style="position:absolute; width:200px; height:115px; z-index:1; border:1px solid c6c6c6; background-color:f7f7f7; left: 26px; top: 39px;">这是一个层</div>

<span><a href="#" onClick="MM_showHideLayers('Layer1','','hide')">隐藏</a></span>
<span><a href="#" onClick="MM_showHideLayers('Layer1','','show')">显示</a></span>
</body>
</html>

第一个问题:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}
//-->
</script>
<script>
function asd(){
setTimeout("MM_showHideLayers('Layer1','','hide')",1000);}
</script>

</head>

<body>
<div id="Layer1" style="position:absolute; width:200px; height:115px; z-index:1; border:1px solid c6c6c6; background-color:f7f7f7; left: 26px; top: 39px;">这是一个层</div>

<span><a href="#" onClick="asd()">点击我,1秒钟后层将隐藏</a></span>
</body>
</html>

你这是在DW中生成的吧,有教程么?
能给讲讲过程么?

在DW中有显示隐藏这一行为您试试便知其奥妙

没什么教程
可以给你讲一讲(我也只是小菜鸟一只)
你的第一个问题:想让层在1秒钟后隐藏(我假设是在单击后1秒钟),那么可以先给它定义一个延时函数,让他1秒钟后隐藏:function asd(){
setTimeout("MM_showHideLayers('Layer1','','hide')",1000);}
</script>
setTimeot就是一个延时函数,上面的函数的意思就是,在1000毫秒后执行MM_showHideLayers('Layer1','','hide')  //这个函数就是隐藏层的函数,

下面<a href="#" onClick="asd()">点击我,1秒钟后层将隐藏</a> 这一句就是个单击链接加的行为:当单击‘点击我,1秒钟后层将隐藏’这个链接时执行asd()这个函数
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_showHideLayers() { //v6.0
var i,p,v,obj,args=MM_showHideLayers.arguments;
for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
obj.visibility=v; }
}
//-->
</script>

这段函数是DREAMWEAVER自带的显示隐藏层的脚本,在添加‘显示隐藏层’的时候自动添加上的

大致就是这个意思

*_* 写得不好,还请多多包涵

谢谢了

function asd(){
setTimeout("MM_showHideLayers('Layer1','','hide')",1000);}
</script>是1秒隐藏。
那如何一打开页面就执行此函数?

function window.onload(){
setTimeout("MM_showHideLayers('Layer1','','hide')",1000);}

如何控制层的深度啊??
我想那一个层来覆盖一个图象一秒钟。
可是这个层却在那个图象的下面而不在上面。
应该怎么办??

调整层的z-index值

我改为了z-index:0不行,又改为了z-index:11不行
我想用那一个层来覆盖的不是图片是一个APPLET,不知道有没有区别啊。

是不是只有把两者都放在层上才能进行覆盖啊??
可是层不是不能叠加在一起的么??
应该怎么办?

求助!!




Copyright © 1999-2000 LSLNET.COM. All rights reserved. 蓝森林网站 版权所有。 E-mail : webmaster@lslnet.com