网页打开新窗口的目标=_blank不符合标准

此元素没有任何属性目标(在这个HTML版本中)

在过去,对HTML4.01 / / xhtml1.1 XHTML1.0,目标=,_blank,目标=严格的doctype,_self等无效。

有朋友问为什么目标=_blank 是不被允许的吗这个属性非常方便。哈哈,我不知道W3C的专家们是怎么想的。据我所知,它主要是关于可用性和友好性。外国人觉得在未经允许的情况下打开一个新窗口是不礼貌的,不管这个取消是否合理,让我们来看看解决方案。

rel属性
HTML4.0增加了一个新的属性,关系,这是用来说明的链接,包含链接页面的关系,以及链接打开的目标。关系有很多的属性值,如下,以前,章,节,等等。我们要使用的关系=外部属性。原代码:


打开一个新窗口

现在是这样写的:打开一个新窗口

这是一种符合严格标准的方法,当然,有必要与Javascript合作才能有效。

Javascript
完整的js代码如下所示:

功能externallinks(){
如果(!文件相对应)的回报;
VaR锚= document.getelementsbytagname();
对于(var i = 0;i < anchors.length;i++){
var锚点=锚{ { };
如果(anchor.getattribute(href)
anchor.getattribute(关系)= =外部)
anchor.target =_blank ;
}
}
在window.onload = externallinks;

您可以将其保存为a. Js文件(如外部js),然后通过外部连接方法调用它:

这是它u3002

最后,目标=新,我的网站采用的是过渡DOCTYPE下允许的,但它不符合严格的标准。在今后的修订,我会用严格的方式去改变所有目标=新rel=外部。

本文引用以下文章:

在一个标准的世界新Kevin Yank窗口链接
基于标准的替代目标=_blank外部链接
2006.7.13更新
门户的许多主页都是弹出式的。我估计,至少在中国,这个想法暂时不能改变。在这种情况下,不需要为每个链接添加相关性。整个代码如下所示。

/ / < { CDATA {!
功能externallinks(){
如果(!文件相对应)的回报;
VaR锚= document.getelementsbytagname();
对于(var i = 0;i < anchors.length;i++){
变量锚点=锚点;
如果(anchor.getattribute(href))
anchor.target =_blank ;
}
}
在window.onload = externallinks;
>