Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何延迟使用用户脚本加载新选项卡?_Javascript_Firefox_Greasemonkey_Tampermonkey_Userscripts - Fatal编程技术网

Javascript 如何延迟使用用户脚本加载新选项卡?

Javascript 如何延迟使用用户脚本加载新选项卡?,javascript,firefox,greasemonkey,tampermonkey,userscripts,Javascript,Firefox,Greasemonkey,Tampermonkey,Userscripts,我使用用户脚本修改网站的客户端代码。此代码正在向页面添加锚定标记。它的目标是\u blank。问题是,如果我太频繁地点击这个链接,网站就会出错。在新选项卡上进行简单刷新即可解决此问题 当我点击链接,它会立即打开一个新的标签。但是我不希望在我访问它之前,或者在某种程度上有延迟的情况下,新的选项卡才会呈现。有没有办法做到这一点 我使用的是Firefox,所以只使用Firefox的解决方案很好,但我看不到一种使用它来阻止选项卡从一开始呈现的方法。当我在谷歌上搜索这个时,我看到了关于可以解决这个问题的附

我使用用户脚本修改网站的客户端代码。此代码正在向页面添加锚定标记。它的目标是
\u blank
。问题是,如果我太频繁地点击这个链接,网站就会出错。在新选项卡上进行简单刷新即可解决此问题

当我点击链接,它会立即打开一个新的标签。但是我不希望在我访问它之前,或者在某种程度上有延迟的情况下,新的选项卡才会呈现。有没有办法做到这一点

我使用的是Firefox,所以只使用Firefox的解决方案很好,但我看不到一种使用它来阻止选项卡从一开始呈现的方法。当我在谷歌上搜索这个时,我看到了关于可以解决这个问题的附加组件的结果。但是,它们的链接总是404。理想情况下,该解决方案只会影响此脚本创建的选项卡,而不是所有选项卡的工作方式,但如果唯一的方法是影响所有选项卡的工作方式,我将接受这一解决方案

上面说有一个
GM\u openInTab
功能。它有一个名为
loadInBackgroun
d的参数,但它只决定在单击链接时新选项卡是否处于焦点位置

如果有一种方法可以让这个新选项卡呈现我选择的一些HTML,我认为这将是一个整洁的解决方案。i、 例如,我会写一些HTML,在焦点上,它会转到实际网站的页面。如果这是一个选项,我需要知道如何在“油脂猴”中打开我选择的HTML选项卡。

(只是实现了您在问题中提出的想法)

您可以放置等待焦点的简单页面,然后重定向到URL参数中传递的内容,并在后台选项卡中打开。比如:

load-url-from-search-on-focus.html?http://example.com

<!doctype html>
<body
 onload="document.title=u=location.search.slice(1)"
 onfocus="u?document.location.replace(u):document.write('?search missing')">



(数据:如果没有那些讨厌的安全预防措施阻止顶级datauri导航的呈现,uri可以用来代替托管页面:|)

所以简而言之,您正在寻找一种方法,以“休眠”(卸载)状态打开新的背景选项卡,对吗?听起来很有意思;我认为带有标签隐藏功能的完整扩展可以做到这一点,但不仅仅是通用汽车。我想我自己没有想到的一点是,我怎么可以让一个github页面免费做到这一点。那可能行得通。我更喜欢一种不用单独建立网站的方式,但这不是一种要求听起来很奇怪;所以你看到背景标签标题变为“示例域”,即使没有聚焦它?似乎是有趣的浏览器错误在页面加载时“过早”触发焦点事件,还是其他一些扩展干预?(在当前的Firefox、Chromes和Edge中尝试了该测试,结果在我的机器上按预期运行™.)不,事实上是我的错误:那个加载页面的标题把我弄糊涂了。它按预期工作