js控制框架页显示

本文介绍如何通过调整HTML框架集(frameset)的cols属性实现网页左侧导航栏的展开与收缩功能,使用户能够更好地利用屏幕空间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

经常看到别人做的框架页可以收缩,自己也想做一个。偷偷研究了一下,发现并不神秘。嘿嘿。不敢独享跟我一样的菜鸟可以偷学两招。嘿嘿。基本的效果可以看下图:



仔细观察下面的页面,大多数人会回答是一个左右分的框架。呵呵。不然,其实他是左中右三分的框架页。只不过中间的框架页宽度非常之小而已。 查看源码可以知道主框架源码如下:

<frameset rows="*" cols="156,8,*" frameborder="0" border="0" id="frame" >
  <frame src="menu.html" name="leftFrame" scrolling="auto" frameborder="0" />
  <frame src="center.html" name="centerFrame" scrolling="auto" id="leftFrame" frameborder="0" />
  <frameset rows="80,*" frameborder="no" border="0" >
    <frame src="top.html" name="topFrame" scrolling="no" frameborder="0" id="topFrame" />
    <frame src="login.html" name="mainFrame" frameborder="0" />
  </frameset>
</frameset>
<noframes><body>对不起,您的浏览器版本不支持框架技术.</body></noframes>


它将框架分为左中右三分的。中间的框架页宽度只有8.左边设置了156。右边为剩余大小。关键的部分还是在中间的页面。注意frameset的id叫frame.下面会用到。所有的动态改变框架的代码全部隐藏在中间的页面中。代码如下:

<script>
 
var displayBar=true;
 
function switchBar(obj) {
  
if (displayBar){
   parent.frame.cols
="0,8,*";
   displayBar
=false;
   obj.src
="image/center_open.gif";
   obj.title
="打开左边管理菜单";
  }
else{
   parent.frame.cols
="156,8,*";
   displayBar
=true;
   obj.src
="image/center_close.gif";
   obj.title
="关闭左边管理菜单";
  }

 }

 
</script>

 
<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0" background="image/center_bg.gif">
  
<tr>
   
<td valign="center"><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br></div>
   
<img src="image/center_close.gif" style="cursor:hand" title="关闭左边管理菜单" onClick="switchBar(this)"></td>
  
</tr>
 
</table>

关键的代码已经看到了吧。关键的代码只有一句。就是在图片按钮的onclick事件中改变父窗体中元素frame的cols的值,其实也就是改变了左中右框架的宽度。打开时左边的宽度为156,中间为8,右边为*,关闭时左边为0,中间为8,右边还为*,这是左边框架就跟消失了一样。呵呵。不错吧。  
好了,好的东西要大家一起分享。


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值