使用target="_blank"打开外部链接是否可接受?

5

我有些困惑,不知道是否应该在我的网站上将指向外部的链接设置为target="_blank"。这种做法会否对您的网站可用性产生负面影响(例如打破“返回按钮轨迹”)?大多数用户是否普遍认为这很烦人?在某些情况下它是否可接受,而在其他情况下则不可接受?

我希望为所有我的网站创造愉快的用户体验,并且不想做出让用户感到恼怒的事情。您对此有何经验/建议?

12个回答

10

大多数人会建议省略它,都是出于很好的原因。

但是大多数人不会告诉你:观察不同的人如何使用计算机进行浏览。和一个普通用户坐在一起一个小时:教师、钢琴演奏者、退伍军人、全职母亲或机械师。观察残疾人士如何浏览。

你会发现你不应该做以下事情:

  • 打开新窗口(非常令人困惑)
  • 离开菜单后立即消失(需要精细的运动控制)
  • 在页面上使用过多的链接(同样令人困惑)
  • 提供太多的功能和选项
  • 使用Flash动画
  • 过于聪明巧妙

你会发现你应该:

  • 简明扼要
  • 简单易懂
  • 让用户停留在同一页上
  • 避免以任何代价使最终用户感到沮丧
  • 创建一个非常响应的网站

还有更多。


2
+1 这是一个非常好的观点,所有的SO用户不会有这种问题,但我们只是互联网用户中非常小的一部分。 - Robert Greiner

8

MHO: 只需链接它。如果我想在新窗口中打开链接,我可以自己做。


+1,这正是我所想的。此外,要在每个外部链接上标准化_blank会很困难。 - Robert Greiner

8
我阅读了很多可用性文档,建议不要强制用户在新窗口中打开链接。如果我想要新窗口,我会右键单击并选择是否要在同一窗口、新标签页或新窗口中打开。
然而,营销人员认为,在新窗口中打开外部链接将使最终用户留在您的网站上,因为他们最终会关闭新窗口并回到您的网站。
编辑:我阅读过关于这个主题的最佳信息是史蒂夫·克鲁格的书《不让我思考》(网站)。

4

我认为作为用户,我更喜欢能够选择是否在新窗口打开链接。不幸的是,许多用户并不知道他们有这个选择,当他们点击外部网站链接时会失去你的网站。我倾向于小心谨慎地将外部链接在新窗口中打开,但这真的取决于你的受众。


许多用户并不意识到他们有这个选择,当他们点击指向外部网站的链接时,他们将会离开你的网站。我同意:这取决于你的受众。我见过一些人不喜欢新打开的窗口(通常他们只使用一个窗口,而不是最大化它),还有一些人不喜欢为什么它们没有在新窗口中打开(这在我所在的一个重度ajax网站中发生了,我点击了一个链接,没有明确表示我想要在新窗口中打开,结果回来时迷失了方向)。对我来说,http://www.netvibes.com 是一个很好的例子,它正确地使用了target="blank"。 - GmonC

3

不要指定目标属性,让用户自行决定是否在新窗口打开链接。如果您想警告用户该链接将带他们离开您的网站,可以实现一个页面来明确说明(例如美国政府网站就是这样做的)。


+1 给用户一个公正的警告,将消除意外的元素,并且对他们来说可能不那么令人烦恼。谢谢。 - Robert Greiner
2
我真的很讨厌被一个中间页面警告要离开一个网站。这会花费额外的时间和思考:我必须查看中间页面,理解我为什么没有到达我原以为要去的地方,然后尽快想出如何继续前进。 - Matt Ball
2
个人而言,我也不喜欢使用中间页面——但是如果你的客户需要某种形式的通知,目前看来似乎这是最不糟糕的选择。 - Will Bickford
请不要添加中间页面!如果你坚持要添加一个,请设置定时器!这样,当我在键盘上敲打时,页面会自动跳转...等到我抬头时便会惊喜地发现页面已经消失。 - Mottie

2

这是一篇非常好的文章,来自 Smashing Magazine,讲述了不要在新窗口/标签页中打开链接。基本上,让用户控制链接行为比为他们决定更好。


2
易用性专家(?)雅各布·尼尔森建议不要打开新的浏览器窗口(虽然这个建议已经有10年了)。
引用:
打开新的浏览器窗口就像一个吸尘器销售人员在拜访客户时先将烟灰缸倒在地毯上一样。不要再用更多的窗口污染我的屏幕,谢谢(特别是由于当前操作系统有着糟糕的窗口管理)。如果我想要一个新的窗口,我会自己打开它!设计师们打开新的浏览器窗口的理论是为了让用户留在他们的网站上。但即使忽略掉接管用户机器这一敌对用户的信息,这种策略也是自我毁灭的,因为它禁用了后退按钮,而后退按钮是用户返回之前网站的正常方式。用户通常不会注意到新窗口已经打开,特别是如果他们使用的是小型监视器,其中窗口被最大化以填满屏幕。因此,试图返回原点的用户将会被灰色的后退按钮所困惑。每个规则都有例外:他建议类似于 PDF 或 DOC 这样在浏览器中打开的文档应该在新窗口中打开,以避免混淆。

+1仅仅因为它已经10年了并不意味着它没用 :P Jakob非常有洞察力。 - Robert Greiner

2

值得一提的是,target 在 XHTML 中也无效。


你应该使用onclick="window.open(...); return false;"。 - Natim

2
我认为这取决于具体情况。对于一个简单的网站,只有一些链接,如关于我们、联系方式、服务等,我不会打开新窗口。用户很容易知道他们在哪个页面,以及他们刚刚查看了哪个页面。但是对于一个包含列表摘要页面并链接到数百甚至数千个单独列表页面的网站,我更喜欢为每个列表打开新窗口。这使用户可以在每个打开的页面上比较服务/价格等。此外,用户无需点击“返回”按钮返回摘要页面,并等待同一页面重新加载。

1

这要看情况而定,通常对于指向您网站上的其他内容的链接,我不会使用_blank。每当我链接到外部内容时,我会使用_blank来保持一个页面在我的网站上打开。这样,当用户完成外部网站的操作后,他们会再次看到我的网站。

在现代浏览器中,这通常会打开一个新标签页。我期望这种行为,但通常我会控制点击以获取新的标签页/窗口,以便保留我的位置。

话虽如此,对于Web应用程序,我总是会将目标属性留空,以便用户可以决定是否打开新窗口。


谢谢,那么当你点击链接时被重定向到新的浏览器窗口/标签页时,你是否感到烦恼? - Robert Greiner
就我个人而言,当我点击一个将我带出当前页面的链接时,我期望它在新的窗口/标签页中打开。如果内容在当前网站上,我则期望它在同一窗口/标签页中打开。 - Nate

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接