请选择 进入手机版 | 继续访问电脑版
收藏本站腾讯微博新浪微博
点点网模板设计大赛 phpchina

经典论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

蓝色理想 最新研发动态 用悬赏 三天解决问题 解决访问速度慢 论坛支持农历生日 - 给官方提建议

论坛活动及任务 归纳网站最新活动 地图任务 邮件更新任务:保护帐号安全

积分换实物,来参加蓝色理想积分兑换吧! 联系招聘客服 蓝色理想帮你找工作! 万元奖励等你拿——点点网模板设计大赛

查看: 33594|回复: 149

[讨论] 讨论:_blank 有必要吗? [复制链接]

Sparanoid 楼主
帖子
71
体力
155
威望
0
发表于 2006-2-12 10:55:00 |显示全部楼层
我不知道 _blank 是否有必要,在strict 下已经不符合了,虽然我知道可以使用 js 这种折中的方法,但是还是觉得不爽……至于我的浏览习惯,如果我要打开新窗口,我会去主动按 shift 的,而不是去看原代码看看是否有 target="_blank" 或者 rel="external"。
我认为 target="_blank" 或者 rel="external" 还是不要强加给浏览者好……

不知道大家是怎么认为的……:)
这个人很聪明,什么都没留下
西部数码顶级域名注册商39元抢注!
bound0 

老饕

版主 手机认证 

帖子
6592
体力
8772
威望
287
发表于 2006-2-12 12:16:00 |显示全部楼层

讨论 _blank 有必要吗?

有必要,如果打开连接时老窗口被覆盖,我会非常不爽!Google过去不用_blank,但是后来学乖了。除非你比Google还牛?
[Bound0 专题列表]
Pas besoin de gril : l'enfer, c'est les Autres.
租服务器,上51IDC | [长沙]招聘:PHP经理10K/WEB前端6K/PHP开发6K

使用道具 举报

Sparanoid 楼主
帖子
71
体力
155
威望
0
发表于 2006-2-12 12:17:00 |显示全部楼层
我习惯用 shift + 左键打开想用新窗口打开的链接,不知道别人是什么习惯
这个人很聪明,什么都没留下

使用道具 举报

帖子
1123
体力
2660
威望
37
发表于 2006-2-12 12:33:00 |显示全部楼层
这是增加亲和力(Accessibility)的重要的一步.
我的网站都是在同一窗口打开链接,但在help页有所申明的.
I follow W3C Web Content Accessibility Guidelines.
Fifty Studio  

使用道具 举报

Sparanoid 楼主
帖子
71
体力
155
威望
0
发表于 2006-2-12 12:39:00 |显示全部楼层
谢谢楼上的意见……

我认为 _blank 并不是很重要……
这个人很聪明,什么都没留下

使用道具 举报

bound0 

老饕

版主 手机认证 

帖子
6592
体力
8772
威望
287
发表于 2006-2-12 14:43:00 |显示全部楼层
在你的head里加一个base的属性就行了,并不算麻烦,可以照顾好多人的情绪哦。
<base target-_blank>

我个人的感觉,如果我在打开连接时老窗口被不随我愿地覆盖了,我不会责怪自己是笨蛋,只会骂网页的作者不替人家着想。
[Bound0 专题列表]
Pas besoin de gril : l'enfer, c'est les Autres.

使用道具 举报

帖子
235
体力
308
威望
3
发表于 2006-2-12 15:14:00 |显示全部楼层
新窗口是必须给用户自行选择的
1. 考虑到浏览器不同,许多浏览器支持 tab browsing, 新窗口就特别不友好
2. 语音浏览器会造成声音重叠
3. 很多浏览器也提供无视_blank的选项,所以写了也是多此一举

使用道具 举报

phevoz 
帖子
222
体力
381
威望
0
发表于 2006-2-12 15:34:00 |显示全部楼层
必须考虑到浏览者的感受 所以我都是不写_blank的
再说了现在的浏览器都有tab浏览 无所谓这个了
用MAXTHON FF点鼠标中键新窗口打开,习惯了
被鱼噎到滴猫's Blog
把你的脸迎向阳光,那就不会有阴影 ┢┦aΡpy 2006 !=^_^=

使用道具 举报

Sparanoid 楼主
帖子
71
体力
155
威望
0
发表于 2006-2-12 15:48:00 |显示全部楼层
bound0在上个帖子中说
在你的head里加一个base的属性就行了,并不算麻烦,可以照顾好多人的情绪哦。
<base target-_blank>

我个人的感觉,如果我在打开连接时老窗口被不随我愿地覆盖了,我不会责怪自己是笨蛋,只会骂网页的作者不替人家着想。

那样不是全部的链接都使用新窗口打开了??
这个人很聪明,什么都没留下

使用道具 举报

jean 
帖子
480
体力
1764
威望
0
发表于 2006-2-12 16:57:00 |显示全部楼层
是否可以在<base target-_blank>这里再设定一下:凡是pdf文件的连接是打开新窗口呢???
轻轻地我走了,正如我轻轻地来。

使用道具 举报

CK同伈鎖

荣誉管理

帖子
4640
体力
19243
威望
372
发表于 2006-2-12 20:34:00 |显示全部楼层
在中国 , 不知道用鼠标右键或 shift 打开新窗口浏览的人占了一半以上.. 照顾下这类人好不好. 表亲和力不亲和力的, 方便用户才是真的
支持 1 下 bound 的看法

使用道具 举报

Sparanoid 楼主
帖子
71
体力
155
威望
0
发表于 2006-2-12 21:05:00 |显示全部楼层
mirycat在上个帖子中说
在中国 , 不知道用鼠标右键或 shift 打开新窗口浏览的人占了一半以上.. 照顾下这类人好不好. 表亲和力不亲和力的, 方便用户才是真的
支持 1 下 bound 的看法

不会吧……好像没你想像的那么苯的……但如果加上 _blank 呢?是否有好的方法?什么样的链接该加、什么样的链接不该加,都没有明确规定吧,很容易造成混乱我认为
这个人很聪明,什么都没留下

使用道具 举报

子虚乌有

荣誉管理 手机认证 

帖子
8391
体力
26707
威望
187
居住地
江苏省 苏州市
发表于 2006-2-13 00:46:00 |显示全部楼层
先移动过来再发言


先拿msdn说事。

经常去msdn的人会注意到msdn的超链接是比较有意思的,如果是内部连接(也就是ms自身内部的连接),很简单,只是一个<a href...>,如果是外部连接(比如连接到w3.org之类),在超链接之后回多一个图标,比如:


但超链接本身还是在当前窗口打开。

再说一个我以前用过的blog:gblog。

它的超链接后面都会跟着一个小图标,一个红红的箭头,鼠标移动过去,会发现这是一个在新窗口打开的超链接,如图:



来评论这两个的功能:

ms:
熟悉ms的用户看到这个图标,会知道这个链接是微软之外的链接,如果用户需要继续在msdn中游荡,他就会使用shift+鼠标左键点开这个超链接。
问题是:你是msdn的老用户吗?你了解这个图标的含义吗?

gblog:
两个超链接,各取所需,你想在当前页面打开,直接点文本链接就是了,想在新窗口打开,点那个小红箭头。
问题是:那么小的红箭头。。。谁知道它什么意思?我用gblog两三个月之后才“意外”发现那是个在新窗口打开超链接的功能-__-



个人目前的做法:

本地链接,在当前窗口打开,但如果布局与当前页面非常不同,比如一个示例页面,则在新窗口打开。

外部链接,一律新窗口打开,因为我认为目前我站上外部链接所指向的页面都需要在别的窗口打开

自己这么作的缺点:如同前面几位同学所说,提供方便的同时也就是限制死了客户的访问方式,但目前没想到别的什么更好的方式。
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

使用道具 举报

Sparanoid 楼主
帖子
71
体力
155
威望
0
发表于 2006-2-13 07:56:00 |显示全部楼层
谢谢提供这么详细的解释。我没有什么疑问了……请大家继续……
这个人很聪明,什么都没留下

使用道具 举报

r2no1 
帖子
114
体力
51
威望
23
发表于 2006-2-13 09:20:00 |显示全部楼层
现在不是有_new的写法的吗,不过需要函数定义,我感觉这点不爽~~
CSS+DIV参考网站:
www.maen.cn
CSS+DIV讨论群:
2210420

使用道具 举报

tance 
帖子
34
体力
35
威望
0
发表于 2006-2-13 09:24:00 |显示全部楼层
ajie的文章,可以参考。

地址:http://www.w3cn.org/article/tips/2005/107.html

_blank开新窗口不符合标准?
作者:阿捷 2005-4-13 10:05:32

本文参考了以下文章:

    * Kevin Yank的《New-Window links in a Standards-Compliant World》
    * 《Standards-based Replacement for target="_blank" in External links》

我们要在新窗口中打开链接通常的做法是在链接后面加target="_blank",我们采用过渡型的DOCTYPE(xh tml1-transitional. dtd)时没有问题,但是当我们使用严格的DOCTYPE(xhtml1-strict.dtd)时,这个方法将通不过W3C的校验,会出现如下错误提示:

"there is no attribute target for this element(in this HTML version)"

原来在HTML4.01/XHTML1.0/XHTML1.1严格DOCTYPE下,target="_blank"、target="_self"等等语法都是无效的,我们只能通过JavaScript来变通实现。

有朋友问为什么不允许使用target="_blank"?这个属性很方便啊。呵呵,不知道W3C的专家们是怎么想的,据我所知,主要是“易用性、友好性”的问题,因为老外觉得不经过用户同意,没有明确提示就打开一个新窗口是不礼貌的。先不管这个取消是否合理,我们来看看解决办法。
rel属性

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;
   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>

就是这样。

最后补充一句,我网站采用的target="new"在过渡型DOCTYPE下是允许的,但也不符合strict标准。下次改版时我将采用strict模式,将所有target="new"改成rel="external"。

使用道具 举报

帖子
235
体力
308
威望
3
发表于 2006-2-13 17:11:00 |显示全部楼层
Sheneyan在上个帖子中说
先移动过来再发言


先拿msdn说事。

经常去msdn的人会注意到msdn的超链接是比较有意思的,如果是内部连接(也就是ms自身内部的连接),很简单,只是一个<a href...>,如果是外部连接(比如连接到w3.org之类),在超链接之后回多一个图标,比如:


但超链接本身还是在当前窗口打开。

再说一个我以前用过的blog:gblog。

它的超链接后面都会跟着一个小图标,一个红红的箭头,鼠标移动过去,会发现这是一个在新窗口打开的超链接,如图:



来评论这两个的功能:

ms:
熟悉ms的用户看到这个图标,会知道这个链接是微软之外的链接,如果用户需要继续在msdn中游荡,他就会使用shift+鼠标左键点开这个超链接。
问题是:你是msdn的老用户吗?你了解这个图标的含义吗?

gblog:
两个超链接,各取所需,你想在当前页面打开,直接点文本链接就是了,想在新窗口打开,点那个小红箭头。
问题是:那么小的红箭头。。。谁知道它什么意思?我用gblog两三个月之后才“意外”发现那是个在新窗口打开超链接的功能-__-



个人目前的做法:

本地链接,在当前窗口打开,但如果布局与当前页面非常不同,比如一个示例页面,则在新窗口打开。

外部链接,一律新窗口打开,因为我认为目前我站上外部链接所指向的页面都需要在别的窗口打开

自己这么作的缺点:如同前面几位同学所说,提供方便的同时也就是限制死了客户的访问方式,但目前没想到别的什么更好的方式。


以前开发的一个显示链接详细信息的东东
我会在里面标清内部链接或是外部链接
这个改装一下应该可以用

使用道具 举报

帖子
130
体力
461
威望
0
发表于 2006-5-12 15:10:00 |显示全部楼层
楼上的图片很不错嘛,奇怪的是怎么有一个css3.0

使用道具 举报

sin100 
帖子
148
体力
615
威望
0
发表于 2006-5-12 17:50:00 |显示全部楼层
具体情况而定,比如sohu,sina等
栏目应该本窗口打开,文章都新窗口打开,看完就关
或者像mop那样框架形式就不用blank了

使用道具 举报

Neo1 
帖子
243
体力
184
威望
13
发表于 2006-5-12 17:58:00 |显示全部楼层
我个人强烈不建议加上_blank, 合不合标准是次要的,用户体验才是最重要的。

1. 加上_blank,用户失去了选择的自由。
2. 不要_blank,用户可以选择打开新窗口(使用浏览器提供的方式),或者不开新窗口。

选择权交还用户吧……代表广大用户感激你们!
Mean What You Write, Write What You Mean
realazy.org/blog/

使用道具 举报

samgo 
帖子
221
体力
62
威望
1
发表于 2006-5-12 20:21:00 |显示全部楼层
mirycat在上个帖子中说
在中国 , 不知道用鼠标右键或 shift 打开新窗口浏览的人占了一半以上.. 照顾下这类人好不好. 表亲和力不亲和力的, 方便用户才是真的
支持 1 下 bound 的看法


同意~~~~~~

使用道具 举报

esnak 
帖子
370
体力
1242
威望
0
发表于 2006-5-12 23:09:00 |显示全部楼层
主要是习惯问题,当大多数用户都习惯了开新窗口按shift的话,这个问题也就不成为问题了。

但是,目前。。。。。。

把这个问题拿去那些访问量很大的,默认开新窗口的论坛去问问看。。。。比如天涯论坛。。。。很多人都是一次开十几个窗口,然后慢慢看,他们会认为用2只手操作才能打开新窗口是很麻烦的事。而且很多网吧用户只能选择IE,没鼠标手势的。

所以。。我认为,一切从实际情况出发,以用户为前提,不要为标准而标准。标准只不过是为你服务的工具而已。
jgwy-esnak

使用道具 举报

帖子
106
体力
77
威望
0
发表于 2006-5-13 00:08:00 |显示全部楼层
导航栏一般直接进入,如果是新闻类的内容,则在新的窗口里打开。
要说用户体验,自动新开窗口也是种很有亲和力的表现。
在看《重构》之前我根本就不知道按shift能新开窗口,有些条目类的内容,如果点击时不会自动新开页面,我就会觉得非常不方便。

使用道具 举报

gjr1 

图腾

高级会员

帖子
392
体力
924
威望
6
发表于 2006-5-13 00:43:00 |显示全部楼层
我觉得是不是有点过头了,凡事都要按用户体验为准么?未免被这些概念束了手脚吧?

有没有人跟超市,商城强烈抗议:你们把苹果摆在里面我买的不方便,应该摆出来。即使提了,超市会不会理你?

怕是没有人吧,有时用blank,也是有网站自身的考量,特别是商城类的,有些信息为了需要,可能会用到BLANK,哪里要一棍子打死,就是在一个窗口刷来刷去,说实在的,一个网站过多的BLANK,我也不习惯,但有些重要页面没有BLANK,我也会说 “搞什么东东,每次都要按个后退。”
还是按需采用了。但处理起来挺烦的,<base target="_blank"/>又是全页面都另弹开,用js对我这个代码能节约就节约的人,实在不喜欢,一个另弹开就搞了这么多的脚本。

使用道具 举报

蓝星国度

高级会员

帖子
271
体力
759
威望
38
居住地
台湾省 台北县
发表于 2006-5-14 03:45:00 |显示全部楼层
何不寫個JS?
在非本域的連結下由用戶自己進行設定是否在新窗口開啟
只需要設定一次~
此後進入瀏覽器便記住這個選項~

經典裡面那麼多高手
寫這個應該不難吧
逝者已矣,來者可追,真的沒有什麼。

使用道具 举报

帖子
354
体力
2136
威望
0
发表于 2006-5-15 14:36:00 |显示全部楼层
Sparanoid在上个帖子中说
mirycat在上个帖子中说
[quote] 在中国 , 不知道用鼠标右键或 shift 打开新窗口浏览的人占了一半以上.. 照顾下这类人好不好. 表亲和力不亲和力的, 方便用户才是真的
支持 1 下 bound 的看法

不会吧……好像没你想像的那么苯的……但如果加上 _blank 呢?是否有好的方法?什么样的链接该加、什么样的链接不该加,都没有明确规定吧,很容易造成混乱我认为 [/quote]
强烈反对mirycat的观点,不要把国人说的这么差。我觉得google主要还是考虑效率和人性化的问题。
每次点一下鼠标和再把鼠标移到相应位置点在新窗口打开是很浪费时间的事
至于shift,如果是只有一只手的残疾人就没法实现。
向我们在家边上网边吃早餐的也不现实
-----------------------------------------------------
个人觉得新闻列表的链接加_blank比较好,大多时侯一则新闻看了马上就关了,再会点新闻列表其他新闻。
大栏目的链接用_self,点其他栏目基本是觉得这页已没有自己要的内容了
该是我的,还是我的!

使用道具 举报

此生有你

荣誉管理 手机认证 

帖子
4040
体力
10663
威望
11
发表于 2006-5-15 15:38:00 |显示全部楼层
这又回到一个老问题了,就是我们要服务的用户究竟是一群什么人。
我想如果我们把这个问题弄明白,那_blank与否都不是那么重要了。
这也是Google的中文搜索引擎为什么把默认状态下搜索结果以新窗口来打开的原因,虽然这个设置可以在个人设置里修改。
Canon 30D
EF 17-40mm f/4L USM | EF 24-70/2.8L USM | AF 70-300mm F4-5.6 APO DG MACRO
[SEVEN WORLDS] happyseven`s Blog

使用道具 举报

帖子
19
体力
31
威望
0
发表于 2006-5-15 15:52:00 |显示全部楼层
不要用啊

有经验的用户,像我的同学,他们知道怎么打开一个新窗口或者新标签。
没经验的用户,像我妈,如果不断的在新窗口打开页面,机器很快就变慢了啊,她会说,什么破网站,死慢地,关都要关半天~

所以不要用啊,呵呵
Have fun! = Have 饭!
www.haha8d.com

使用道具 举报

帖子
57
体力
211
威望
68
发表于 2006-5-15 16:11:00 |显示全部楼层
我一直觉得这个问题,应该由权威组织来建一个规范,这个规范不是给用户,而是给浏览器的开发商。
在这个规范定制以后,浏览器读到<a href="......">链接文字</a>的时候,显示的不只是“链接文字”,而是在“链接文字”后面还会有一个符号,比如一个小图标,点小图标就会在新窗口打开,点“链接文字”就在原窗口打开。这样就可以废掉target=_blank,每个链接都有两种打开方式。用户习惯以后可以自由选择。
但是这样会给网页设计带来麻烦。解决办法是可以新定义一些css的属性,把后面的小图标不显示,这样的话链接只能在原窗口打开,也符合一些人提倡的思想。

或者还有一种办法,target=_blank还是照样用,但是blank的链接后面会自动添加个标志,比如像软件菜单,会弹出新对话框的都有个“...”。这样用户习惯以后就会知道这个链接是在新窗口还是原窗口打开。

各种办法都会有缺点。也许以后会有个比较完善的办法。

使用道具 举报

Neo1 
帖子
243
体力
184
威望
13
发表于 2006-5-15 16:31:00 |显示全部楼层
想问一句:

你怎么知道你设计的打开新窗口模式的就是用户所期待的?强制连接在新窗口中打开,如果用户不想新窗口打开该连接怎么办?你所做怎么能够保证就是用户想要的?

举个例子:我的机器很烂,每打开一个新窗口都会让我痛苦不已,我就是不要打开新窗口!请把target=_blank去掉吧,要不要新窗口我自己决定! 别老自作聪明帮我着想,你已经侵犯了我的自由选择权!

结论:把选择权交给用户。

或许用户真的不知道怎么打开新窗口,你可以使用其它方法来告诉她/他,比如帮助文档,比如页面上的小tips等,或者为本站写一个浏览指南。

补充: 别老拿google说事,google是可以定制的。google肯定是知道中国的用户被sina等网站强奸够了,不助纣为虐强奸一下反而会让用户不爽。google英文是没有默认打开新窗口的,凭什么这样对待中国人???我建议某些人不要被强奸了还喊爽

所以严重抗议google在中国的默认开新窗口的策略!!!没有东西一进中国不变味的,包括某些人的图腾Google!!!!

言辞激烈,没有针对任何人,大家见谅,谢谢。
Mean What You Write, Write What You Mean
realazy.org/blog/

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

Archiver|手机版|安久科技提供CDN|blueidea.com ( 京ICP备05002321号 )  

GMT+8, 2012-2-9 16:03 , Processed in 0.130122 second(s), 8 queries , Gzip On, Memcache On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部