<base target=_blank>是将基本链接的目标框架都改为新页打开,如果对HTML、CSS和JS不是很熟悉,不建议使用这种方法,改为独立控制。
其实<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=_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.try0212.blog.sohu.com/" target="_blank">单独定义,新窗口打开</a>
<a href="http://www.try0212.blog.sohu.com/" target="_self">单独定义,相同窗口打开</a>
<a href="http://www.try0212.blog.sohu.com/" target="_top">单独定义,整页窗口打开</a>
<a href="http://www.try0212.blog.sohu.com/" 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 attribute target for 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,却不能弹出窗口,这是因为,有些浏览器被用户设置了,不让弹出窗口,当然这样设置是为了屏蔽广告,因此,这是就无法打开新窗口,知道了原因,解决就很简单了,在浏览器中设置一下就可以了。
分享到:
相关推荐
如果不使用 `<base>` 标签,并且没有设置 `target` 属性,链接默认会在当前页面(`target="_self"`)中打开,也就是说,它们会替换掉当前页面的内容。例如: ```html <a href="p1.html">第一页</a> <a href="p2....
<base href="默认基础URL" target="默认目标窗口"> ``` 1. **默认基础URL**: - `href`属性是必需的,它定义了页面中所有相对URL的基础地址。这意味着,如果一个链接没有提供完整的URL,浏览器将使用`<base>`标签...
- 如果在 `<base>` 标签中设置了 `target` 属性,则该设置将成为所有 `<a>` 标签的默认行为。 - 使用框架时,确保 `<frame>` 或 `<iframe>` 元素的 `name` 属性与 `<a>` 标签中的 `target` 属性匹配,以便正确地在...
<base href="http://www.example.com/" target="_self"> </head> <body> <a href="about.html">关于我们</a> </body> </html> ``` 这里,`href`属性指定基础URL,`target`属性定义了链接打开的方式,如`_blank`在...
<base target="_self"/> </head> <body onload="getCurrentTime()"> <form id="form1" runat="server"> <div id="loading-mask" style=""></div> <div id="loading"> <div class="loading-indicator"><img src=...
<a href="${c.url}" target="_self"><span>${c.name}</span></a> [#list tag_list as c1] <@cms_channel_list parentId=c1.id> [#if tag_list?size > 0] <li class="havesubchild"> [#else] <li> [/#if] <a...
<a href="${c.url}" target="_self"><span>${c.name}</span></a> [@cms_channel_list parentId=c.id] [#if tag_list?size>0] <ul> [@cms_channel_list parentId=c.id] [#list tag_list as c1] [@cms_channel_list ...
基础URL `<BASE>` - **功能**:提供一个基础URL,用于相对URL的解析。 - **属性**: - `href`:指定基础URL。 - **示例**: ```html <base href="http://www.example.com/"> <a href="about">关于我们</a> ```...
- **基本目标 `<base target>`**:定义默认的目标框架,如`_blank`表示所有链接都在新窗口打开。 - **基本字体大小 `<basefontsize>`**:定义文档的基本字体大小。 - **示例**: ```html <address>作者: John Doe...
`base target`属性通常与`<base>`标签一起使用,用于设置所有未指定`target`属性的链接的行为。 `<base>`标签是HTML文档中一个特殊的标签,它并不在页面上产生可见元素,而是提供一些基础信息,如页面的URL基准或...
2. **必需属性**:`<base>`元素必须至少包含`href`或`target`属性中的一个,通常情况下会同时设置这两个属性以充分发挥`<base>`的作用。 3. **href属性的有效性**:如果设置了`href`属性,它的值必须是一个有效的URL...
<base target="_self"> </head> ``` 这样处理后,所有带有 `target="_self"` 的链接都将按照预期在当前窗口中打开。 #### 三、`iframe` 对象与子页面对象的区别 在处理 `iframe` 时,开发者可能会遇到两种不同的...
<base target="_self"> <title><bean:message key="app.title"/></title> <meta http-equiv="Content-Type" content="text/html;charset=GBK"/> <script src="./js/common.js"></script> <link type="text/css...
- `<base href="http://www.cufe.edu.cn/" target="_blank">` 设定基础URL为中央财经大学网站,并设定所有链接在新窗口中打开。 - `target`属性可选择 `_blank`(新窗口)、`_self`(当前窗口)、`_parent`(父...
<base href="http://example.com/subdir/" target="_blank"> ``` ##### 3. `body`标签及其属性 - **`<body>`**:定义文档的主体内容。 - **`bgcolor`**:设置背景颜色。 - **`background`**:设置背景图片。 ...
此外,`<base target="_blank" />`则设定所有链接在新窗口打开。 ### 链接与目标框架 `<a>`标签用于创建超链接,`target`属性可以指定链接打开的方式。例如: - `target="_blank"`:在新窗口或标签页中打开链接。 ...
别忘了配合`<base target="_self">`,以避免刷新时打开新窗口。 ### 四、关闭`showModalDialog`或`showModelessDialog`窗口 通过在对话框内部添加一个按钮,并使用JavaScript的`window.close()`方法,可以关闭由这...
例如,通过设置`<base id="goDownload" target="_self"/>` 和 `document.getElementById("goDownload").target = "download"`,可以指定下载行为的目标窗口。 2. **调整服务器响应**:在服务器端,确保文件下载请求...