WordPress

遵循XHTML之符合XHTML的新窗口打开方式

猴猴 · ·

最近没事总想着把页面更改为符合XHTML的规范代码,虽然原来的模版代码已经基本符合了,只是由于后来又更改和加入了很多东西,弄的在w3c验证里出现了NN多个错误。新窗口打开target=”_blank”代码在XHTML过渡规范里是可以通过的,但是在严格的规范下是不行的。需要替换成 rel=”external” 。而且不是简单替换就可以的,还得辅助一个js文件来完成。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;

在需要使用 rel=”external” 来完成页面跳转的页面采用如下代码调用external.js文件,以便实现 rel=”external” 的功能。如果是全站使用,那么还是放在header.php里吧。

<script type="text/javascript" src="js/external.js"></script>

在需要在新窗口打开的链接中使用 rel=”external” 而不是 target,例如:

<a href="http://www.huyangjia.com/" rel="external">huyangjia.com</a>

这样就可以在符合XHTML1.0标准的前提下实现超级链接的新窗口跳转了。但是好像麻烦了很多。HTML5好像又恢复了target,迷迷瞪瞪啊。。。

0 条回应