由于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(距离屏幕上端的象素)。