在网页中,经常碰到这种情况:点击某些链接,就会弹出新窗口,原来的页面部改变,而有些链接,就在原窗口上打开新的链接,原窗口没有了,被覆盖了。这个是为什么呢?怎么实现的呢?
target=_blank,这个标签,就是解决这个问题的。<base target=_blank>是将基本链接的目标框架都改为新页打开,即弹出新窗口。<a>、<form>等很多标签都支持target="black"的属性,可以在这样的标签里单独做设置,比如:
<a href="xxx.htm" target="_blank">超链接内容</a>
<form action="xxx.htm" target="_blank">表达内容<input type="submit" value="提交按钮"></form>
如果不加这一句,默认均为本页刷新,即target="_self"。还有两个这样的标签,<target=_top>表示在整页窗口打开,<target=_parent>表示在父窗口打开。
<a href="http://www.bookboy.cn/" target="_blank">单独定义,新窗口打开</a>
<a href="http://www.bookboy.cn/" target="_self">单独定义,相同窗口打开</a>
<a href="http://www.bookboy.cn/" target="_top">单独定义,整页窗口打开</a>
<a href="http://www.bookboy.cn/" target="_parent">单独定义,父窗口打开</a>
另外,这只是单独设置,如果有在某个页面上有很多的链接或者form表单,逐一的添加标签会很麻烦,有没有类似批处理的呢?
这就要用到<base target=_xxx> ,这是基本的HTML语言。用<base target=_××>来设置这个网页所有链接的目标窗口。也就是说,网页中只要添加<base target=_××>这句,那么所有的超链接就无须单独设置。最好将这句写在<head>和</head>之间。例如
<base target=_blank>表示网页中所有的超链接的目标地址都在新建窗口中打开。
<base target=_self>表示网页中所有的超链接的目标地址都在原窗口上打开。
当然,这样的标签有时也会碰到麻烦。
1 不符合标准
当我们使用W3C过渡型标准时,即DOCTYPE(xh tml1-transitional. dtd),没有问题,但是使用严格的标准时,即DOCTYPE(xhtml1-strict.dtd),就会出错,错误提示:
"there is no attributetargetfor this element(in this HTML version)"
原因是,外国人认为,不经过用户同意,就随便打开新窗口,是不礼貌的,不尊重用户的,可参看 http://bbs.chinahtml.com/showthread.php?t=53657
那碰到这种情况时怎么办呢?
HTML4.0增加了一个新属性:rel,这个属性用来说明链接和包含此链接页面的关系,以及链接打开的目标。rel有许多的属性值,比如next、previous,、chapter、section等等。我们要使用的就是rel="externa l"属性。原来这样写的代码:
<a href="document.html" target="_blank">打开一个新窗口</a>现在要写成这样:
<a href="document.html" rel="external">打开一个 新窗口</a>这是符合strict标准的方法。当然还必须配合一个javascript才有效。
javascript
完整的代码JS如下:
function externallinks() {
if (!document.getElementsByTagName) return;
var anchors = document.getElementsByTagName("a");
for (var i=0; i<anchors.length; i++) {
var anchor = anchors[i];
if (anchor.getAttribute("href") &&
anchor.getAttribute("rel") == "external")
anchor.target = "_blank";
}
}
window.onload = externallinks;
你可以把它保存成一个.js文件(比如external.js),然后通过外部联接方法调用:
<script type="text/javascript" src="external.js"></script>
就是这样。
2 浏览器不支持
有时,使用了上述标签,但是,任旧不见效果,比如使用了target=_blank,却不能弹出窗口,这是因为,有些浏览器被用户设置了,不让弹出窗口,当然这样设置是为了屏蔽广告,因此,这是就无法打开新窗口,知道了原因,解决就很简单了,在浏览器中设置一下就可以了。
3 衡水人才网03188.net首页<base target="_blank" />不起作用了,将它提前,放到了<title>下边,js前边就正常了,原来加载js是会影响到一些代码。
总结一下:在head中,js放最后。
分享到:
相关推荐
<td width="27%"><div align="center"><strong><font color=green> 登入名</font><font color=green>:</font></strong></div></td> <td width="73%"> <input name="id" type="text" size="20" maxlength="20"><a...
<base target="_blank"> <meta http-equiv="X-UA-Compatible" content="IE=7"> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <meta name="ROBOTS" content="NOODP"> <meta name=...
<html><br> <head><br> <base href="<%=basePath%>"><br> <br> <meta http-equiv="content-type" content="text/html;charset=UTF-8"/> <br> <br> <br> <meta http-equiv="pragma" content="no-cache"><br> <meta ...
Java Web实验报告 Java Web Experiment Report 学生所在学院: 学院 学生所在班级: 学 生 姓 名 : 学 号 : 指 导 教 师 : 月 一、客户端开发设计:系统设计 一、实验目的 掌握Html的语法和用法,能制作简单的...
<restriction base="string"> <enumeration value="AK"/> <enumeration value="AL"/> <enumeration value="AR"/> <enumeration value="AZ"/> <enumeration value="CA"/> <enumeration value="CO"/> ...
Oracle9i AIX5L上的安装、建库与升级笔记<br>内容如下:<br>1、 用root用户完成下面的操 <br><br>添加oracle用户和组: <br><br> 你可以使用命令或smit 来完成,我一般都是只创建dba组。 <br><br>创建相关目录,并...
<br><br>Armadillo<br>ASProtect<br>Enigma<br>ExeCryptor<br>eXPressor<br>PeSpin<br>RlPack<br>TheMida<br>HyperUnpackMe1<br><br>and any protector with Import Elimination, Directly Imports and Hashed ...
<link href="css/base.css" rel="stylesheet"> <link href="css/index.css" rel="stylesheet"> </head> <body> <div class="warp" id="banner"> <div class="layer"></div> <div class="header"> <div ...
<settings> <data_type>xml</data_type> <!-- [xml] (xml / csv) 数据类型xml/csv--> <csv_separator>;</csv_separator> <!-- 如果使用csv作为数据的话,需要使用这个属性;表示文件数据分隔符,(平常以";...
是将基本链接的目标框架都改为新页打开,如果对HTML、CSS和JS不是很熟悉,不建议使用这种方法,改为独立控制。 其实<a>、<form>等很多标签都支持target="black"的属性,建议在这样的标签里单独做设置,比如:...
<base href=" <a href="http://www.it365cn.com" target="_blank">http://www.it365cn.com </a>"> <div id=demo style=overflow:hidden;height:120;width:500;background:#214984;color:#ffffff> <table align=...
<div class='box_base'></div> <div class='box_lid'></div> <div class='box_ribbon'></div> <div class='box_bow'> <div class='box_bow__left'></div> <div class='box_bow__right'></div> ...
系统级的环境变量一般在/etc/profile 文件中定义 在 CAMS 系统 与数据库<br> 相关的环境变量就定义在/etc/profile 文件中 如下所示<br> export ORACLE_BASE=/u01/app/oracle<br> export ORACLE_HOME=$ORACLE_BASE/...
<a href="链接" target="blank">文本或者图片</a>在新的窗口打开链接 <a href="#">文本或者图片</a>暂时没有设置链接。 锚点链接<a href="#id">标题</a> 跳转到标题处(在一个页面上) <p id=""> 设置锚点链接的...
<base:HLabel id="lblFlt" width="60" text="FLT" mandatory="true"/> <base:HInput id="flt_no" width="85" maxChars="7" tabIndex="6" restrict="[A-Z,0-9]" validator="{fltNoValidator}"/> <base:HText...
1. <script type="text/javascript" src="<%=contextPath%>/public/js/ext-base.js"></script> 2. <script type="text/javascript" src="<%=contextPath%>/public/js/ext-all.js"></script> 3. <script type="text/...
<base href="<%=basePath%>"> <title>My JSP 'text.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta ...
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> <data name="Bitmap1" ...
--[if lte IE 6]></td></tr></table></a><![endif]--> </li> </ul> <br class="clear" /> <ul> <li><a href="#nogo" class="four outer">SEARCH<!--[if IE 7]><!--></a><!--<![endif]--> <!--[if lte IE 6]><table>...
<base href="<%=basePath%>"> <title>My JSP 'text1.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta ...