日期:2009-03-20  浏览次数:20731 次

                   使用JavaScript改进你的框架

    两种网页设计者:喜欢用框架(Frame)的和不喜欢的。不喜欢使用框架的人们总是抱怨说,框架使得页面变得复杂,增加了下载负担,而且会减少你的页面被搜索引擎找到的机会。而喜欢框架的设计者则说框架使浏览变得简单,并赋予设计人员在安排页面上更多的控制。

  不管你是赞成使用框架还是反对,事实上,带框架的页面一直存在。本文中,我们将向你介绍两个改进框架页面的JavaScript程序,这也许会使那些憎恨框架的人们重新审视框架的价值。

  在我们开始介绍这两个技巧前,让我们先看看框架是如何工作的。当你创建了一个框架页面,你就建立了一个特殊的HTML页,其中包含两个或更多的框架或者说是在一个页面中的不同窗口。框架页定义了各框架的大小和在其中显示的HTML文件名。

  Web设计者经常遇到的问题之一是访问者或搜索引擎建立起的链接往往是框架中的HTML页面,而非框架页本身。这就使得人们很轻易的到达你的一个页面,却没有任何的标志或浏览帮助——没有任何可以标示这个网站的东西。

  要解决这个链接问题,在FrontPage中打开你的每个页面,并切换到HTML页。然后在</head>标记前插入下列代码:

<script language="JavaScript">

<!--Hide from older browsers

if (window == top)

top.location.href = "frames.htm";

// -->

</script>


  在你的代码中用你的框架页名代替“frames.htm。”现在无论什么时候,想直接下载这个页面的访问者都将得到框架页。

  我们的第二个技巧恰恰采取相反的策略,它保证你的页面不会出现在别人的框架页中。有些站点将外部的链接页面显示在一个框架页中,而不是打开一个新的窗口。

  为了防止你的页面出现在其他人的框架中,在HTML中的</head>标记前加入下列JavaScript代码:

<script language="javascript">

<!--Hide from older browsers

if (top.location != location)

top.location.href = location.href;

// -->

</script>


  当该页面被下载,这个脚本会自动破坏框架,将自己显示在窗口中。

  注意,上述脚本不会使你的框架同其他人的有什么不同。因此,你不应该将它插入到所有你已经建立的并要在框架中显示的页面中。如果你使用框架,你应将此代码段加到框架页本身。完成方法仍是切换到HTML页,将代码插入到</head>标记前。