bookmarklet javascript获取所有打开的标签页的URL

时间:2014-01-13 22:29:50

标签: javascript bookmarklet

是否有任何其他DOM公开,bookmarklet可以访问以获取当前在浏览器中打开的所有选项卡的URL列表?我已经做了一些搜索,但是发现很少有关于可以在普通网页中完成的书签中可以做什么的文档 - 虽然已经编写了一些bookmarklet,但似乎它们比普通网页具有更多的特权状态(虽然这似乎因浏览器而异。)

2 个答案:

答案 0 :(得分:0)

  

我已经做了一些搜索,但发现很少有关于在书签中可以做什么的文档,这些文件无法在普通网页中完成

那是因为基本上没有。出于所有实际目的,运行bookmarklet与在页面上运行脚本完全相同。它几乎完全等同于单击页面上具有href="javascript:.."

的链接
  

虽然已经编写了一些bookmarklet,但似乎它们比普通网页具有更多的特权状态(尽管这似乎因浏览器而异)。

我还撰写和研究了很多关于bookmarklets的内容(查看我的SO历史)。我发现只有两个显着的差异。

1。)您可以使用书签的URL中的%s结合书签关键字,通过URL栏进行参数替换。

2。)Chrome中有一个奇怪的黑客攻击(很容易被未来的更新关闭),它允许书签在新标签页中打开一个URL,然后在该标签中运行代码当且仅当< / em>用户按CTRL +单击书签。但是,这仍然不允许你对已经打开的标签做任何事情。

如果您认识其他人,请告诉我。

唯一的解决方案是创建浏览器扩展。如果您可以编写书签,那么编写一个非常基本的扩展名并不复杂。

答案 1 :(得分:0)

bookmarklet是在网页中注入的javascript代码;

如果有多个选项卡可用,则会在当前活动选项卡的网页中注入书签。

书签的力量是无限的,但它只对已经注入的页面上的1个网页有效;

这里需要的是browser extension

该扩展程序可让您访问浏览器功能;