由于IE和NS对于层的支持存在差别,所以在代码的最前面。先对浏览器进行检测。IE使用document.all.id-name.style.visibility="visible",NS使用document.layers.id-name.visibility="visible"。 <HTML> <HEAD> <TITLE>层的显示和隐藏及浏览器检测</TITLE> <script language="javascript"> <!-- file://if explorer (4.x) if (document.all) { layerRef='document.all' styleRef='.style.' } file://else if netscape (4.x) else if (document.layers) { layerRef='document.layers' styleRef='.' } else{ alert("你使用的浏览器可能看不到效果。") } function show(){ eval(layerRef+'["divTest"]'+styleRef+'visibility="visible"') } function hide(){ eval(layerRef+'["divTest"]'+styleRef+'visibility="hidden"') } file://--> </script> </HEAD>
<BODY bgcolor="#000000" text="#FFFFFF" link="#FFFFCC" vlink="#CCFFCC" alink="#CCCCFF">
<p align="center"><a href="javascript:hide('divText')">隐藏代码</a> <a href="javascript:show('divText')">显示代码</a>
<div id="divTest" style="position:absolute; left:238px; width:340px; height:32px; top:190px; visibility: hidden"> <p align="center">本例是显示和隐藏层的例子。-----这里是层里显示的内容,随便。</p> </div> </BODY> </HTML>
说明:<div id="divTest" style="position:absolute; left:238px; width:340px; height:32px; top:190px; visibility: hidden"> 是设置层的绝对位置以及宽度和高度。使用象素值表示。层一开始设置为“hidden”隐含的,点击后显示出来“visible”。 你所需要做的仅仅是: (1)改一下<div>...</div>中的id名字,当然不改页可以,只要前后保持一致即可。 (2)根据你的页面情况设置一下层的绝对位置,多试几次直到合适为止。绝对位置left:238px(距离屏幕左侧的象素), top:190px(距离屏幕上端的象素)。
|