【问题标题】:Bookmarklet on blank page空白页上的书签
【发布时间】:2012-08-30 21:35:09
【问题描述】:

我编写了一个简单的书签,只需单击一下即可打开多个网页:

javascript:(function(){window.open("http://www.w3schools.com");window.open("http://www.google.com");window.open("http://www.yahoo.com");})();

我无法打开浏览器并立即单击它,但小书签将无法工作,除非窗口中已加载页面。我更喜欢将我的浏览器主页设置为“空白”以提高速度。有没有办法让这个小书签在没有加载页面的情况下执行?

另外,如果确实加载了某些内容,我希望小书签替换窗口中加载的任何页面。目前,它打开了 3 个新标签页。我已经在第一个 window.open 上尝试了“name”属性的“_self”和“_parent”值,但它似乎不起作用。我的格式可能不正确。

任何帮助表示赞赏!谢谢!

【问题讨论】:

  • 你用的是什么浏览器?您的书签在 Firefox 14 中的“about:blank”上为我工作。
  • Chrome for Mac 版本 21.0.1180.79 在这里。显然,Chrome 上的空白页面不是有效的 HTML 页面。

标签: javascript bookmarklet window.open


【解决方案1】:

无法在任何页面中打开书签。

相反,您可以尝试将主页设置为 data:text/html,Welcome! 之类的内容(是的,它是一个有效的 URL)。

要在同一选项卡中打开页面,请键入:

location.href='http://www.w3schools.com'

【讨论】:

  • 谢谢。我会试试的。我将进一步研究 location.href 方法。
  • '数据:文本/html,欢迎!'确实允许我执行代码。谢谢!
【解决方案2】:

我遇到了同样的问题,并且从互联网上了解到,如果你去你的 about:config,搜索 browser.newtab.url 并将其更改为 about:blank 而不是默认的 about:newtab 您的 javascript 小书签应该可以工作(刚刚尝试过,它正在工作!)。这应该比发送 data:text/html 消息更干净(在任何情况下,即使您设置了主页,它也不适用于每个新标签,只有一次用于新窗口)

【讨论】:

猜你喜欢
  • 2018-03-01
  • 1970-01-01
  • 2012-12-31
  • 1970-01-01
  • 2021-02-04
  • 1970-01-01
  • 1970-01-01
  • 2015-04-14
  • 2011-04-28
相关资源
最近更新 更多