找回密码
 注册
搜索
热搜: 回贴

Web标准学习:Xhtml标准中弹出新窗口

2009-12-16 02:44| 发布者: admin| 查看: 52| 评论: 0|原作者: 柳梦璃

最近在做IDRSS在线RSS阅读器,符合XHTML1.1标准,但是发现一个问题,target="_blank"属性不再被支持!

在XHTML1.0过渡型标准之前,target="_blank"属性一直是点击链接后弹出新窗口的方法,但是在XHTML1.0严格型标准以及XHTML1.1之后就不再支持target属性(这个方法将通不过W3C的校验),也就是说不能再用target="_blank"来弹出一个新的窗口!我也不知道为什么W3C要取消这个标准,有些文章说在国外未经许可的弹出一个新窗口是不礼貌的表现,无语……东西方文化的不同,但毕竟标准掌握在人家手里,我们没有话语权!联想到最近的中国自己的无线标准:WAPI协议,更加显现出核心技术和标准的重要性!!!只有自己掌握了核心技术及标准才能维护我们自己的利益~

废话少说,弹出新窗口才是符合中国国情和用户习惯的,看看怎样在Xhtml1.0严格型标准以及以后的XHTML版本中支持打开新窗口:

在Xhtml标准中新增了一个rel属性,rel有许多的属性值,比如next、previous、chapter、section等等。我们要使用的就是rel="external"属性。原来这样写的代码:

新窗口 现在要写成这样:

新窗口
这是符合strict标准的方法。当然还必须配合一个javascript才有效。

javascript完整的代码如下:

function externalLinks() {
if (!document.getElementsByTagName) return;
var anchors = document.getElementsByTagName("a");
for (var i=0; i var anchor = anchors[i];
if (anchor.getAttribute("href") &&
anchor.getAttribute("rel") == "external")
anchor.target = "_blank";
}
}
window.onload = externalLinks;

你可以把它保存成一个.js文件(比如external.js),然后通过外部联接方法调用:


就是这样即可实现打开新窗口。

最新评论

QQ|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )

GMT+8, 2024-9-30 09:37 , Processed in 0.128494 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

返回顶部