2009.04.20 by sfufoet

Firefox 技巧 – 打开链接的最佳方法

70

Firefox 技巧   打开链接的最佳方法[图] | 小众软件 > firefox
本文写给 Firefox 爱好者。

有时候,左键点击网页上的某个链接,想让它在当前标签打开,可链接却偏偏在新标签打开。真是很郁闷。

让链接在新窗口打开,无非这两种办法:把链接的 target 属性设为 “_blank” 或者用 Javascript。第一种已经被 W3C (万维网联盟)淘汰,而目前的浏览器都还支持着这个属性。只有用 Javascript 才能让你的网页符合标准。当然很多网站一直都在用 target=”_blank”,比如 Google 和百度。

我认为:让链接在新标签或者在当前标签打开,应该由用户来控制。假设一个链接没有用上面提到的两种方法,那么左键单击它,链接会在当前标签打开;中键点击,在新标签打开(注:IE6 需要用Shift + 左键来代替中键点击)。目前的浏览器都是支持左键点击或中键点击链接的。

所以,一个网页里的链接不要用这两种方法才是最好的。可事实上,这两种方法却满天飞。

啰嗦完毕,下面开始教程:

首先你要有 Firefox 一只,然后安装 GreaseMonkey 这个扩展,接着安装两个 GM 脚本:

  1. Don’t open new windows,此脚本会杀掉所有网页的 target=”_blank”,它支持框架网页。
  2. Convert javascript or onclick to normal links,此脚本专门让使用 javascript 技术的链接变成正常的链接。它的好处就是,转换后链接可以用中键来点击。它不支持框架网页,而且它可能让某些链接失效。

    如果发现网页链接不正常,请右击状态栏的猴子图标,选择“管理用户脚本”,在左边找到脚本,点击“不包括下列网址”下的“添加”按钮,把当前网页地址添加进去,刷新页面就行了。

有了这个两个脚本,想要链接在当前标签或新标签打开,都是你说了算。不过,如果网页用 javascript 中的 window.open 方法来让链接在新窗口打开的话,这两个脚本就无能为力了。如果你有好方法对付的话,请留言告诉我。

点击中键虽然可以让链接在新标签打开,但存在一个问题:点击后要不要立刻自动切换到新标签?人是善变的,有时候想点击后立刻自动切换,有时候却不想。安装 MClickFocusTab 就可以轻松解决这个问题。

MClickFocusTab 的用法:

  • 用中键点击链接时,短按=开启新标签不切换,长按=开启新标签并切换。
  • 用中键点击下拉菜单时,除了上面的效果之外,还有些许差别,短按=下拉菜单保持开启,长按=按后下拉菜单关闭。

另外,把链接拖到地址栏是可以让任何链接都在当前标签打开。还有 Scavin 提到一个扩展 Easy DragToGo,如果你不喜欢用中键来点击链接,可以试试这个拖拽链接的扩展。

update 1: Zhouzm 留言:

推荐一个FF扩展:Link Alert

鼠标划过链接时显示链接的状态,例如新建窗口(这种就放心的左键点吧)、js()、ftp、当前页打开 等等,然后用户可以根据链接状态再决定如果点击,最好是配合 Easy DragToGo

update 2: anonymous 留言:

Link Alert 这个插件可能会导致内存泄漏。
firefox版本 Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1b3) Gecko/20090305 Firefox/3.1b3
不知道是不是个例,还是插件冲突

update 3: Lin 留言:

在 about:config 页面,设置browser.link.open_newwindow.restriction=0,可以禁止网页在新标签打开。

47 Comments:

  1. 1. Armgod said on: 2009/04/20 07:19

    我在想,要不要沙发呢

    回复

    Gavatar | 小众软件

    @Armgod, 围观猴子

    回复

    Gavatar | 小众软件

    @老时, 一起围观

    slrey reply on 四月 20th, 2009,18:09:

    老时 reply on 四月 20th, 2009,10:39:

  2. 2. Tina said on: 2009/04/20 07:19

    沙沙沙沙沙沙沙沙沙沙沙沙沙沙~~发!!!!!!!!!

    回复

  3. 3. insway said on: 2009/04/20 07:21

    那个猴子头太丑了。。。。

    回复

    Gavatar | 小众软件

    @insway, 扩展也不可貌相。我不知道你最近有没有安装过它,它的猴子头以前是比较丑的,现在已经重新绘制过。

    回复

    sfufoet reply on 四月 20th, 2009,08:02:

  4. 4. Tina said on: 2009/04/20 07:23

    ………我恨!

    回复

    Gavatar | 小众软件

    @Tina, 要恨就恨 Akismet 把留言吃掉了

    回复

    scavin reply on 四月 20th, 2009,11:55:

    Gavatar | 小众软件

    @Tina, 嗯呐,不是我的错

    回复

    Armgod reply on 四月 20th, 2009,22:38:

  5. 5. Armgod said on: 2009/04/20 07:50

    但是那个猴子头却灰常有用……火山在这个问题上很纠结嘛,我这种没追求的人几乎所有未知打开方式的链接都中键打开…

    回复

    Gavatar | 小众软件

    @Armgod, 这不是纠结。中键遇到用 javascript 的会打不开。所以需要 GreaseMonkey 出手。用了它们你爱咋样咋样,很爽的。

    回复

    Gavatar | 小众软件

    @sfufoet, 我也发现这个问题了。。。
    这个脚本收下了。。。

    Enson reply on 四月 20th, 2009,09:10:

    Gavatar | 小众软件

    @sfufoet, P.s.还是不习惯用中键 宁愿按2次 囧…

    Enson reply on 四月 20th, 2009,09:11:

    Gavatar | 小众软件

    @sfufoet, 是有这个问题,现在我变成有理想有追求的人了,呵呵
    装上鸟~

    Armgod reply on 四月 20th, 2009,22:39:

    sfufoet reply on 四月 20th, 2009,08:03:

  6. 6. AlbertNi said on: 2009/04/20 08:02

    关于拖放到地址栏,等于在地址栏输入网址打开,所以未必是在当前页面打开,而要看地址栏的设置而定(我是设置成地址栏和搜索框都在新标签页打开的,免得一直要Ctrl+T)

    回复

  7. 7. 天毅 said on: 2009/04/20 08:33

    无论是opera还是ff,都是用中键……

    回复

  8. 8. 煋人 said on: 2009/04/20 08:44

    当然还是在新窗口打开比较好。。。

    回复

  9. 9. xiao3 said on: 2009/04/20 08:51

    不错!不过还是自己选择喜欢的吧!

    回复

  10. 10. wt said on: 2009/04/20 08:54

    我倒是无所谓这些,基本上都是用中键点的。

    回复

  11. 11. yorn said on: 2009/04/20 09:22

    现在用中键的比较普遍性,在各浏览器上基本通用了,不过如果鼠标没中键的话就麻烦点了~~~
    请有谁知道firefox启动时恢复上次浏览网址的列表是储存在哪个文件的呢??先谢谢了~~~

    回复

  12. 12. zhouzm said on: 2009/04/20 09:36

    推荐一个FF扩展:Link Alert

    鼠标划过链接时显示链接的状态,例如新建窗口(这种就放心的左键点吧)、js()、ftp、当前页打开 等等,然后用户可以根据链接状态再决定如果点击,最好是配合 Easy DragToGo

    回复

    Gavatar | 小众软件

    @zhouzm, 顶, 我也很喜欢这两个插件.

    回复

    Dofy reply on 四月 20th, 2009,10:19:

    Gavatar | 小众软件

    @zhouzm, 谢谢推荐..真的很好用

    回复

    c reply on 四月 20th, 2009,10:19:

    Gavatar | 小众软件

    @zhouzm, 多谢推荐,文章已经更新。

    回复

    sfufoet reply on 四月 20th, 2009,10:58:

  13. 13. Dofy said on: 2009/04/20 10:18

    一直不喜欢按中键, 太难按了. firefox 里 ctrl+click 也可以在新标签打开链接, shift+click 会在新窗口中打开.

    回复

  14. 14. donkie said on: 2009/04/20 10:31

    基本上是用拖拽=Easy DragToGo。
    地址栏,搜索框等都用后台新标签打开=Tab Mix Lite CE

    回复

  15. 15. Showfom said on: 2009/04/20 10:45

    一直用中键点击。

    回复

  16. 16. 爱月 said on: 2009/04/20 10:55

    有些时候是客户要求“恩,点它之后能不能在新窗口打开啊?~”。。。
    囧。。。

    回复

  17. 17. jude said on: 2009/04/20 11:02

    Opera也可以直接用这个user js。

    确实很久没有用左键单击了。要后台打开新标签就用中键,要打开并且切换到新标签就用拖拽打开,要在当前标签中打开就左键单击。

    回复

  18. 18. aisinvon said on: 2009/04/20 11:07

    这么麻烦,装个easy drag to go 全部拖到新标签页后台打开

    回复

  19. 19. jude said on: 2009/04/20 11:08

    另外请问Firefox有没有User CSS扩展?

    回复

    Gavatar | 小众软件

    @jude, Stylish

    回复

    donkie reply on 四月 20th, 2009,11:14:

  20. 20. puosong said on: 2009/04/20 11:14

    listen 一下 window.open 然后把内容改写一下应该就行

    犯懒了,哪个勤快的人写一下吧~

    回复

  21. 21. wozzl said on: 2009/04/20 11:22

    我什么都不用 我用猴子的免点击脚本 链接根本不用点

    回复

  22. 22. yiiming said on: 2009/04/20 11:32

    用Easy DragToGo的路过,据说猴子脚本很强大,但对脚本2字有天生的害怕,所以还是免了.
    Easy Drag To Go对我而言,最大的不爽是不能复制文字,每次都是ctrl+c.其它的真的很方便.

    回复

  23. 23. 贝壳 said on: 2009/04/20 11:36

    额···通常我希望在新标签页打开

    回复

  24. 24. Betty said on: 2009/04/20 11:43

    太好了,可讨厌有些网站点什么都开新窗口的作法了…

    回复

  25. 25. Hitsmaxft said on: 2009/04/20 11:51

    一直用着vimperator,窗口打开的行为用F,;o,;b就可以区分开了。不过大部分窗口是在新页面打开

    回复

  26. 26. skystar said on: 2009/04/20 12:06

    感觉很复杂的样子,而且对我没啥用

    回复

  27. 27. twodays said on: 2009/04/20 12:12

    一直把firefox设置成在当前页打开所有链接,不记得是firefox自带的功能还是tab mix的功能,然后用中键单击在新页签打开网页,左键就是当前页打开,这样做既可以让自己能够自由控制是在当前页还是新页面打开链接,同时也可以让鼠标的点击分散,延长左键的使用寿命。
    同时在Dragtogo中设置成往左拉在新页签前台打开,往右拉在新页签后台打开。

    回复

  28. 28. Lorz said on: 2009/04/20 12:14

    Easy DragToGo 不是很不错吗

    回复

  29. 29. muzuiget said on: 2009/04/20 12:23

    我用Tab Mix plus,Firegestures和Quick drag设置成这样
    左键-当前标签页打开
    中键-新建后台标签页打开
    按住右键再按左键-新建前台标签页打开
    按住右键再滚轮-切换标签页
    选中文字左键拖曳-新建前台标签页搜索
    选中文字右键拖曳-新建后台标签页搜索
    一切由我掌握,爽也。

    回复

  30. 30. hzhbest said on: 2009/04/20 12:46

    一直都是中键,MClickFocusTab 很适合我。

    回复

  31. 31. 托尔 · 银月 said on: 2009/04/20 12:47

    Link Alert
    我比较有兴趣
    拖拽和手势用脚本解决

    回复

  32. 32. iuv said on: 2009/04/20 14:40

    easy drag to go,往上拖新窗口后台打开,往下拖新窗口前台打开。恩纳

    回复

  33. 33. ragmaja said on: 2009/04/20 15:40

    有没有好的白板程序可以推荐的?

    回复

    Gavatar | 小众软件

    @ragmaja, 这个好像适合你:http://item.feedsky.com/%7Efeedsky/applife/%7E7005526/161622862/5113514/1/item.html

    回复

    Gavatar | 小众软件

    @sfufoet, 恩,是不错,谢谢!

    ragmaja reply on 四月 20th, 2009,17:03:

    Gavatar | 小众软件

    @sfufoet, 特别的试过后,这个功能还是不错的,只是不能存盘,总体不是特别满意;所以还是暂时使用PicPick,不知还有没有其他推荐的:)

    谢谢!

    ragmaja reply on 四月 20th, 2009,17:56:

    sfufoet reply on 四月 20th, 2009,16:53:

    Gavatar | 小众软件

    @ragmaja, zoomit 不是挺好的? 也可以保存的

    回复

    Dofy reply on 四月 21st, 2009,12:30:

  34. 34. echo said on: 2009/04/20 15:56

    继续安装脚本。。

    回复

  35. 35. 沙渺 said on: 2009/04/20 15:56

    我的办法

    直接加装Tab Mix Plus,开启“单窗口模式”

    所有的_blank,甚至是Ctrl+N也被封死,一如maxthon的显示方式

    回复

  36. 36. boogeyman said on: 2009/04/20 18:20

    把链接直接拖到自己想要开的标签上不就成了么?

    回复

    Gavatar | 小众软件

    @boogeyman, 拖多麻烦。

    回复

    sfufoet reply on 四月 20th, 2009,20:01:

  37. 37. anonymous said on: 2009/04/20 19:06

    Link Alert
    这个插件可能会导致内存泄漏
    firefox版本
    Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1b3) Gecko/20090305 Firefox/3.1b3
    不知道是不是个例,还是插件冲突

    回复

    Gavatar | 小众软件

    @anonymous, 多谢提醒。

    回复

    sfufoet reply on 四月 20th, 2009,20:01:

  38. 38. Lin said on: 2009/04/20 19:37

    about:config
    设置browser.link.open_newwindow.restriction=0
    似乎禁止网页打开新窗口

    回复

    Gavatar | 小众软件

    @Lin, 测试了一下,的确是禁止新标签打开。

    回复

    Gavatar | 小众软件

    @sfufoet, 应该是使本来要在新窗口打开的页面只能在新标签打开,而禁止在新窗口打开。

    Lin reply on 四月 20th, 2009,22:11:

    Gavatar | 小众软件

    参见:
    http://kb.mozillazine.org/Browser.link.open_newwindow.restriction
    http://kb.mozillazine.org/Browser.link.open_newwindow

    当browser.link.open_newwindow.restriction=0时,强制所有link遵守browser.link.open_newwindow的设置。
    包含:
    *All HTML links with target=”_blank”.
    * All JavaScript calls to window.open().

    ff2及以后版本默认browser.link.open_newwindow=3,即强制所有本应在新窗口打开的link在当前窗口的新标签打开。

    Lin reply on 四月 20th, 2009,22:26:

    sfufoet reply on 四月 20th, 2009,20:01:

  39. 39. fwoncn said on: 2009/04/20 21:55

    有必要吗
    必装插件EasyDragToGo就可以搞定了

    回复

  40. 40. Chen said on: 2009/04/21 13:40

    我一般打开链接都按鼠标的滚动键的,已经成为了习惯了,呵呵

    回复

  41. 41. 万条虫 said on: 2009/04/23 02:19

    真诡异~我最开始爱标签浏览就是因为它可以在新标签页而非当前页打开……囧~当年还是那个叫NetCaptor的浏览器~标签浏览的始祖啊~如今这玩意儿已经死了……

    回复

  42. 42. panco said on: 2009/04/23 12:31

    装Eazy DragToGo扩展就好了, 简单方便好用可定制, 哦也

    回复

  43. 43. Daniel said on: 2009/04/23 15:41

    ff改设置变成不弹出,
    安装一个quick drag

    只要点就是原标签,
    拖出就新标签,方便

    回复

  44. 44. Eric said on: 2009/04/26 20:29

    其实有一个最简单的方法,似乎大家都没注意,却搞的相当繁琐.
    就是利用拖拽功能.
    安装扩展Easy DragToGo
    此扩展可以定义你拖拽链接时的四种定义:上下左右
    够不够你用了?
    我的定义是:向上拖,当前tab打开新链接;向下拖,开新tab打开链接,但不激活;向右拖,开新tab打开链接并激活;向左拖,另存为.

    回复

  45. 45. JYYX said on: 2009/05/11 08:55

    这个东西我也想过 不过哦后来放弃了 因为我浏览大量网页的时候头脑一般不会特别清醒 都是百度或google一下 看到哪点哪 在很短的时间里 经常自己都不清楚到底想不想先切到新页面 所以我全部自动切到新标签页去 习惯了就好~ 不过说不定这个有助于提高反映力呢!!哪倒真的很想试试 改善下木瓜脑~ – - ~

    回复

  46. 46. JYYX said on: 2009/05/11 08:58

    对了比较不爽的是google图片 我的习惯是只看原图 那个缩略图的页面开了 载入清晰的图都要半天 还在新页打开原图~ OOXX

    回复

  47. 47. 红棉812 said on: 2009/06/07 04:47

    W3C也不是金科玉律,他们不提倡就等于不好么?
    乱用是人的问题,不是那两种方法的不好。
    再好的方式有人乱用也是白扯。

    回复

One Trackback

  1. A.shun's Blog

Post a Comment

Your email is never published nor shared. Required fields are marked *

Name*

E-mail*

Website

Type your comment out: