链接大观(2)
时间:2006-03-23 11:27 来源:本站原创 作者:未知
二、链接的相关属性
●关于target属性
在链接中,target属性最让人费解。
target属性表示链接在哪个游览器窗口打开。其取值有以下几种情况:
1._self:如$#@60;a href=″...″ target=″_self″$#@62;
该属性值表示在当前窗口打开所链接的文件,如果你不对这个属性值进行设置的话,则默认为该值。
2._blank
如果你想将所链接的文件在新开的窗口打开,就取该值。
3._parent
在讲这个属性之前,我们先要了解一下多帧结构与浮动帧。
多帧结构其实就是多个HTML在同一个浏览器窗口中同时显示,并将其分为多个小窗口,一个帧就是一个HTML显示区。这样,这些当前浏览器窗口就叫做这些子窗口的“父(parent)窗口”。在多帧结构设置时,每个帧有自己的名称,如:
$#@60;frameset rows=″80,*″ cols=″*″ frameborder=″NO″ border=″0″ framespacing=″0″$#@62;
$#@60;frame name=″top″ scrolling=″NO″ src=″...″$#@62;
$#@60;frameset cols=″80,*″ frameborder=″NO″ border=″0″ framespacing=″0″$#@62;
$#@60;frame name=″left″ noresize scrolling=″NO″ src=″....″$#@62;
$#@60;frame name=″main″ src=″....″$#@62;
$#@60;/frameset$#@62;
$#@60;/frameset$#@62;
在这个多帧结构中,帧名top、left、main代表着三个小窗口,parent即为当前多帧结构的父窗口。
而标记iframe所表示浮动帧的效果就如我们所说的画中画电视,它实际就是在当前窗口中内嵌一个HTML页面,而不像多帧结构一样,帧间内容相互分隔。这个内嵌页面所在的浏览器窗口就是它的parent,如HTML文件example.htm中有如下代码:
$#@60;p$#@62;以下是一个内嵌帧示例$#@60;/p$#@62;。
$#@60;iframe src=″index.htm″ name=″child$#@62; $#@60;/iframe$#@62;
这样,名为child的HTML页面内嵌在主页example.htm中,它的parent就是当前浏览器窗口。
由此,不难明白了,target属性的_parent取值即表示链接文件在其父窗口中打开。
4._top
此属性值意义与_parent类同。
5.特定窗体名,如target=″main″
了解了上述的多帧结构以后,我们知道,每个帧可以有自己的帧名即name属性,所以,我们可以指定链接的文件? 定名称的帧里打开。如target=″main″表示标记$#@60;a$#@62;所指向的文件在帧main里打开。
如果喜欢阅读人民日报网络版的朋友细心的话,可以发现,target的取值是各不相同的名称,如数字等,并且又不是在多帧结构里,为什么要设置target呢?有兴趣的话,请你不妨试几个例子效果有什么不同:
$#@60;a href=″1.htm″ target=″win″$#@62;....$#@60;/a$#@62;
$#@60;a href=″2.htm″ target=″win″$#@62;....$#@60;/a$#@62;
另外试一下
$#@60;a href=″1.htm″ target=″win1″$#@62;....$#@60;/a$#@62;
$#@60;a href=″2.htm″ target=″win2″$#@62;....$#@60;/a$#@62;
怎么样?前一个例子中,两个链接都是在同一个新开的窗口中打开,而后一例子则打开两个新窗口。说明了什么?特定的窗口名代表着新打开的浏览器窗口,所以,如果几个链接的target属性值都为特定的窗口名,那么就表示这些链接都在这个窗口中打开,不另开窗口。这样,就可很好地解决令人厌烦的点击链接,不停地新弹窗口占用系统资源的情况。
就笔者自己的经验来说,设定target值还另有妙用,请大家试一下:
$#@60;a href=″1.htm″ target=″1234″$#@62;....$#@60;/a$#@62;
与
$#@60;a href=″1.htm″ target=″_blank″$#@62;....$#@60;/a$#@62;
并且1.htm中有一链接是关闭窗口的:
$#@60;a href=″javascript:window.close()″$#@62;关闭本窗口$#@60;/a$#@62; //注:window.close()是调用window对象的close方法关闭本窗口。
结果是在你点击“关闭本窗口”时,在第二个例子中是不是出现“你查看的页正在试图关闭窗口,是否关闭本窗口?”的提示?而第一个例子则不会。
●给链接加上注释
这在平时使用中很常见,比如当前链接字比较多时,只截取其中的一部分,而当你的鼠标移动到链接字上时,就会出现一个小黄条提示,将所有的链接字显示出来。实际上利用链接的title属性即可实现。定义格式为:
$#@60;a href=″…″ target=_blank>服务器端CGI或脚本程序(即URL所指的程序)时,需要将一些参数取值传给程序,程序再将这些参数如para1、para2等的值分解出来,这样可从客户端获得信息,实现动态交互功能,并能根据这些取值生成相应的页面,而不是我们所看到的呆板的静态页面。
●关于点击链接下载
朋友对点击链接下载文件等肯定不会陌生,实际上,对于链接的文件,如ZIP以及用户端无法识别的文件,都会提示用户下载。所以,与一般的链接没有区别,另外,有一点要申明的是,链接文件不一定都要是HTML文件。
如:$#@60;a href=″http://netschool.cpcw.com/homepage/cgi/cgi.zip″$#@62;点击此下载$#@60;/a$#@62;
一些朋友常问点击链接听MP3音乐或看flash动画是怎么回事,实际也是将链接直接链接到这些文件,当只有你自己的机器上安装了相应的软件或控件时才不会提示下载而直接打开这些文件。
●链接为脚本语言语句
这种应用相信到过Yesky旧版网页陶吧的朋友很熟悉的,首页上的链接都为:
javascript:openHTML(....) 形式。
链接可以是脚本程序,其定义格式为:
脚本语言类型:程序语句;程序语句...
其中脚本语言类型不外乎两种:javascript与vbscript
其中程序语句包括单语句或函数引用。
如网页陶吧的例子:
下面定义一个函数,用来将链接的HTML文件在新浏览器窗口打开:
$#@60;script language=″javascript″$#@62;
function openHTML(url)
{
var hWnd=window.open(url,″″,″toolbar=yes,scrollbars=yes,menubar=yes,width=690,height=480,left=20,top=5,status=yes″)
}
$#@60;/script$#@62;
而在链接要引用这个函数时,可以写成
$#@60;a href=″javascript:openHTML(′http://www.yesky.com′)″$#@62;到天极网$#@60;/a$#@62;
这样,点击时就会执行相应的脚本程序。
●链接为邮件
链接也可以是一个邮件,当点击链接时,自动打开你在浏览器中设置的收发邮件软件,其链接形式为:
$#@60;a href=″mailto:邮箱?subject=邮件主题″$#@62;..$#@60;/a$#@62;
mailto:收信人邮箱;subject:邮件主题,可略。
如$#@60;a href=″mailto:hero@cpcw.com?subject=谈一下主页制作″$#@62;与主持人联系$#@60;/a$#@62;
对于链接相关的知识我们就讲到此,另外,在DHTML对象模型中,链接对象及对象集也是脚本语言编程中经常触及的,大家可到天极网页陶吧(homepage.yesky.com)学习相关知识。