首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在指定选项卡中运行脚本,而不影响另一侧选项卡(Greasemonkey/Tampermonkey)

在使用Greasemonkey/Tampermonkey脚本时,可以通过以下方法在指定选项卡中运行脚本,而不影响其他选项卡:

  1. 首先,需要获取当前页面的选项卡ID。可以使用GM_info对象中的script属性的tab属性来获取当前脚本所在的选项卡ID。例如:var currentTabId = GM_info.script.tab.id;
  2. 使用GM_getTabs函数获取所有已打开的选项卡。这将返回一个包含所有选项卡信息的数组。
  3. 遍历所有选项卡,使用条件判断来判断当前选项卡是否为目标选项卡,如果是,则执行脚本。

以下是一个示例脚本,用于在指定选项卡中运行脚本:

代码语言:txt
复制
// ==UserScript==
// @name         在指定选项卡中运行脚本
// @namespace    yourNamespace
// @version      1.0
// @description  在指定选项卡中运行脚本,不影响其他选项卡
// @match        https://example.com/*
// @grant        GM_info
// @grant        GM_getTabs
// ==/UserScript==

(function() {
    'use strict';

    // 获取当前选项卡ID
    var currentTabId = GM_info.script.tab.id;

    // 获取所有选项卡
    GM_getTabs(function(tabs) {
        // 遍历选项卡
        for (var i = 0; i < tabs.length; i++) {
            var tab = tabs[i];
            
            // 判断当前选项卡是否为目标选项卡
            if (tab.id === currentTabId) {
                // 在目标选项卡中执行脚本
                // TODO: 在此处编写要在目标选项卡中执行的代码
                console.log('脚本在目标选项卡中运行');
            }
        }
    });
})();

请注意,在以上示例中,https://example.com/*是匹配要运行脚本的网址的匹配模式。您可以根据实际情况进行修改。

这是一个基本的示例,您可以根据具体需求进行更进一步的定制和扩展。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

最新Tampermonkey 中文文档解析(附基础案例和高级案例)

另外在脚本添加“@connect*”。通过这样做,tampermonkey仍然会询问用户是否允许下一个连接到未提及的域,但也会提供一个“总是允许所有域”按钮。...用户还可以通过在“脚本设置”选项卡的用户域白名单添加“*”来白名单所有请求。 注意: 初始url和最终的url都会被检查, 为了向后兼容scriptish@domain标记也会被解释。...示例 // @grant none @noframes 这个标签表明脚本在主页面上运行不是在iframes里 @unwrap 这个标签是被忽略的,因为他在谷歌浏览器里不需要 @nocompat 目前...这就是为什么tm支持这个标签来禁用运行为firefox/greasemonkey编写的脚本所需的所有优化。要保持此标记可扩展,可以添加可由脚本处理的浏览器名称。...loadinbackground具有与active相反的含义,并被添加以实现Greasemonkey 3.x兼容性。如果未指定“活动”或“加载后台”,则选项卡将不会聚焦。

5.3K11

Tampermonkey 高级API的使用 附Demo

使用 Tampermonkey 编写高级跨网站自动化任务脚本 在Tamermokeny编辑脚本可以很容易地控制自己的网页 处理一般性的操作外,更换问题,图片,注入样式和脚本外 如果我们要做更多 这就需要使用...Tamermokey提供的应用程序接口, 即高级API unsafeWindow unsafeWindow 对象提供权限访问页面的js函数和变量 向document添加样式可以使用 GM_addStyle...name GM_setValue(name, value) 设置‘name‘ 的值到storage GM_getValue(name, defaultValue) 从storage获取‘name’的值...options可以是以下值 active 决定新的tab是否被聚焦,聚焦的意思是直接显示 insert 插入一个新的tab在当前的tab后面 setParent 在tab关闭后重新聚焦当前tab 另外,新的选项卡将被添加...loadinbackground具有与active相反的含义,并被添加以实现Greasemonkey 3.x兼容性。如果未指定“活动”或“加载后台”,则选项卡将不会聚焦。

1.8K10
  • Tampermonkey的安装与使用

    它提供了诸如便捷脚本安装、自动更新检查、标签脚本运行状况速览、内置的编辑器等众多功能, 同时Tampermonkey还有可能正常运行原本并不兼容的脚本。...使用第三方脚本 进入greasyfork https://greasyfork.org/zh-CN/scripts 获取需要的插件脚本即可 自定义开发脚本 鼠标点击Tampermonkey图标呼出其选项卡...可使用默认的you,或者你的名字 @description 脚本描述(类似于编程的注释,阐述该脚本的作用等) 命名空间 @namespace 脚本的命名空间(通常使用默认http://tampermonkey.net...如果方案是 *,则它匹配 http 或 https,不匹配 file、ftp 或 urn。如果主机只是 *,那么它匹配任何主机。如果主机是 *.hostname,则它匹配指定的主机或其任何子域。...脚本可以有任意数量的@require 键。每个 @require 在安装脚本时下载一次,并与脚本一起存储在用户的硬盘驱动器上。指定的 URL 可能与安装脚本的 URL 相关。

    2.3K40

    使用 Tampermonkey 编写高级跨网站自动化任务脚本

    它提供了诸如便捷脚本安装、自动更新检查、标签脚本运行状况速览、内置的编辑器等众多功能, 同时 Tampermonkey 还有可能正常运行原本并不兼容的脚本。...脚本自动更新:您可以对脚本的检查更新频率进行设置。不再因为过时的脚本产生漏洞。 安全:可以使用正则自定义运行脚本的网站。...兼容性:编辑的脚本不仅可以在 Chrome 上运行,也可以借助 Greasemonkey 在火狐上运行,同时脚本支持 ES6。...用户还可以通过在“脚本设置”选项卡的用户域白名单添加“*”来白名单所有请求。 注意:初始 URL 和最终的 URL 都会被检查, 为了向后兼容 scriptish@domain 标记也会被解释。...回调函数的 remote 变量是显示此值是从另一个选项卡的实例修改的(true)还是在此脚本实例修改的(false)。 因此,不同浏览器选项卡脚本可以使用此功能相互通信。

    5K10

    3个方法解决百度网盘限速

    下面有3个方法解决百度网盘限速的问题,演示的下载文件是大于1G的一个 War3.zip 单文件(用拖拽的方法打开,否则显示页面不存在),使用的宽带是电信20M,百度限速后的下载速度只有256KB/s,理论上的下载速度是可以达到...Firefox 浏览器需要安装拓展 Greasemonkey,Chrome 和360等浏览器需要安装拓展Tampermonkey。...shareid=3457730696&uk=1767948507#3edk 密码 3edk 注意 1、IDM绿色版需要点击运行文件 "!绿化卸载.bat" 才会自动关联下载。...4、脚本更新的方法是打开附加组件页面,右键选择本脚本,然后点击更新,或者打开 脚本地址 重新下载覆盖安装。...在IDM中选择“下载”—>“选项”,选择“连接”选项卡,将“连接类型/速度”设置为“较高速率连接:局域网/Wi-Fi/移动网络4G/其他”,然后再将“默热最大连接数”设置为“16”或者更大。

    3K50

    5 分钟,教你从零快速编写一个油猴脚本

    Tampermonkey,又称 Greasemonkey 油猴脚本,是一款免费的浏览器扩展,可用于管理用户脚本,它本质上是对浏览器接口的二次封装 油猴脚本可用于更改页面布局样式、完成页面自动化、去广告...介绍 Tampermonkey 特点包含: 内置的编辑器,可以非常方便地管理、编辑用户脚本 支持自动更新检查功能 标签脚本运行状态速览 可以通过压缩文件、云存储进行脚本备份及还原 通过面板新建一个用户脚本...,用于确定脚本的唯一性 @version 脚本的版本号,用于脚本的更新 @description 脚本的描述信息 @author 作者 @require 定义脚本运行之前需要引入的外部 JS,比如:jQuery...@match 使用通配符执行需要匹配运行的网站地址 @exclude 排除匹配到的网站 @grant 指定脚本运行所属的权限 @connect 用于跨域访问时指定的目标网站域名 @run-at...指定脚本运行时机 @icon 用于指定脚本的图标,可以设置为图片 URL 地址或 base64 的字符串 2.

    3K30

    浏览器用户脚本—打造自己的专属页面

    通常通过浏览器的用户脚本管理插件来开启,例如TampermonkeyGreasemonkey等。...如何运行一个浏览器脚本 安装用户脚本管理器 首先需要安装一个脚本管理器插件,Tampermonkey支持Chrome、Firefox、Safari、Microsoft Edge等主流浏览器,可以在https...Chrome可以打开链接https://chrome.google.com/webstore/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo...author 作者 match 匹配的页面URL,即脚本可以生效运行的页面地址 grant 脚本需要获得的权限,unsafeWindow等 修改页面样式 下面以修改百度搜索结果的页面为例,简单写个...jQuery,那么可以在头部的注解块通过@require来引入,然后脚本里就可以使用熟悉的jQuery啦。

    5.4K40

    百度有广告?电影没处下?网页不让复制?贴吧页面太丑?今天课代表全方位强化你的浏览器。

    视频网站还在使用老旧的Flash播放器不是Html5播放器?找资源发现城通网盘皮皮盘的广告简直豪无人性? ? ? ? ? 别急,以上内容仅仅是我们今天将解决的一部分问题。...01 油猴脚本管理工具 油猴管理器是浏览器扩展的神器之一,目前有 TampermonkeyGreasemonkey、Violentmonkey 三大油猴管理器,它们对于各大浏览器平台的支持情况: ?...安 装很简单,打开链接https://tampermonkey.net/ 根据你的浏览器安装Tampermonkey拓展,Chrome不能访问拓展商店请点这里。 ?...添加百度、搜狗、谷歌搜索结果Favicon显示效果 搜索高亮用这个:搜索高亮脚本(https://greasyfork.org/zh-CN/scripts/368418) 百度和谷歌搜索页面可以设置为单列...、双列模式 添加标记数量,标记当前的id,界面更好看 请求是异步请求,并不会出现一个链接没有反馈回来,其余等待的情况,每个链接的请求都是独立的,互不影响,对于网络的影响几乎没有 使用前⬇ ?

    1.1K20

    油猴脚本入坑指南

    基础 这部分主要是开始写油猴脚本前应当有所了解的知识 常见的用户脚本管理器 Tampermonkey 应该是各位见得最多的也是最知名的,好用又稳定,多浏览器支持,我很喜欢 Greasemonkey 用户脚本始祖...,我们现在一直习惯说的油猴脚本的“油猴”实际上就是 Greasemonkey,只支持 Firefox 由于与 Tampermonkey 等其它脚本管理器在 API 的使用上会有些区别,导致某些情况下你很难保持你的脚本同时对...GreaseMonkey 用户脚本开发手册 不同的用户脚本管理器可能会加入自己独有的 meta,开发时建议以你的脚本打算主要支持的脚本管理器为主,例如这是 Tampermonkey 的文档 GM API...向油猴插件菜单添加脚本指令(通常用于打开自己写的设置界面或者执行代码之类的) GM_setClipboard GM.setClipboard 复制指定内容到剪贴板 GM_xmlhttpRequest...API GM_* 通常是同步的,新的 API GM.* 是异步的(采用 Promise),在使用时请参考官方 wiki 并多加留意 并且,有些 API 的名称拼写也发生了变化,在上面的表格已经用粗体标识

    4.1K00

    深入理解浏览器内核 - 火狐浏览器常用插件

    火狐浏览器的HttpRequest插件是一个分析http请求封装信息的扩展的插件,其作用是令到Asp.net能够读取客户端发送HTTP值(URL、Cookie、表单传递过来的参数),模拟http请求,...该插件将自动尝试对所有的网址使用https协议进行访问,主要对那些支持https协议访问默认是http的网站有意义。 (3)ImTranslator插件 ?...(5)Tampermonkey插件 ? 火狐浏览器的Tampermonkey插件是最受欢迎的用户脚本管理器,每周用户超过1000万。...此插件使用户脚本的管理变得非常容易,并提供了一些功能,比如对正在运行脚本的清晰概述、内置编辑器、基于Zip的导入和导出(Google Drive、Dropbox、OneDrive)、自动更新检查以及基于浏览器和云存储的同步...最后,它与3.x版的GreaseMonkey兼容,支持实验性的4.x版本。

    1.4K60

    JavaScript 逆向爬取实战(下)

    Hook 技术中文又叫做钩子技术,它就是在程序运行的过程,对其中的某个方法进行重写,在原先的方法前后加入我们自定义的代码。...这里我们需要切换到 Sources 选项卡的 Overrides 选项卡,然后选择一个文件夹,比如这里我自定了一个文件夹名字叫做 modify,如图所示。 ?...由于执行的是 JavaScript,所以我们几乎可以在网页完成任何我们想实现的效果,自动爬虫、自动修改页面、自动响应事件等等。...安装完成之后,在 Chrome 浏览器的右上角会出现 Tampermonkey 的图标,这就代表安装成功了。 ? 我们也可以自己编写脚本来实现想要的功能。编写脚本难不难呢?...在这里显示了我们已经有的一些 Tampermonkey 脚本,包括我们自行创建的,也包括从第三方网站下载安装的。 另外这里也提供了编辑、调试、删除等管理功能,我们可以方便地对脚本进行管理。

    1.2K22

    从零实现的浏览器Web脚本

    当然浏览器是不支持我们直接编写Web级别脚本的,所以我们需要一个运行脚本的基准环境,当前有很多开源的脚本管理器: GreaseMonkey: 俗称油猴,最早的用户脚本管理器,为Firefox提供扩展能力...@noframes: 当存在时,该命令会限制脚本的执行。该脚本将仅在顶级文档运行不会在嵌套框架运行,不需要任何参数,默认情况下此功能处于关闭状态即允许脚本在iframe运行。...: boolean ): 用于在新选项卡打开指定的URL。 GM.registerMenuCommand(name: string, onclick: () => void, accessKey?...由此引出了我们要讨论的下一个问题,如何在document-start即页面加载之前执行脚本。...,我们不能将这些变量暴露给网站本身,但是又需要将相关的变量传递给脚本脚本本身就是运行在用户页面上的,否则我们没有办法访问用户页面的window对象,所以接下来我们就来讨论如何保证我们的高级方法安全地传递到用户脚本的问题

    77350

    推荐几款优秀的Chrome插件,值得收藏!

    1、Tampermonkey    使用用户脚本自由地改变网络,提升您的浏览体验,使用篡改猴!   ...篡改猴是一款功能强大的浏览器扩展功能,拥有超过1000万用户,可以在网站上运行用户脚本,从而提升您的浏览体验。许多中国用户称篡改猴为油猴。   ...用户脚本是一些小型程序,可以修改页面布局、添加或删除功能以及自动执行操作,个性化您的网络体验。...Chrono接管你在Chrome™的所有下载,你的所有下载管理工作都在浏览器完成,不需要安装另外的程序。...5、Cookie-Editor    简单强大的Cookie编辑器,允许您在不离开选项卡的情况下快速创建、编辑和删除Cookie。

    80810

    运维:利用nssm实现Windows服务管理

    应用程序选项卡特别注意在“应用程序”选项卡设置正确的应用程序路径,在“Startup directory”设置启动目录,确保能正确解析批处理文件的相对路径。...参数说明 Details选项卡 Details选项卡可以设置启动参数,以及进程优先级和退出代码行为等高级选项。参数设置命令: 配置完成后,点击“Install Service”按钮完成服务的注册。...删除服务:若需移除已创建的服务,可以在nssm命令行输入:四、监控与日志nssm还提供了标准输出和错误输出重定向功能,方便用户收集服务运行过程的信息。...在nssm配置界面的“Logging”选项卡,可以设置输出日志文件的位置,以便于后期分析和排查问题。...总结来说,nssm作为一个简单实用的工具,极大地简化了Windows服务的创建和管理过程。无论是批处理脚本还是其他类型的可执行文件,只要借助nssm,都能够作为后台服务稳定、可靠地运行

    2.9K20

    提升 ChatGPT 的稳定性:探索浏览器插件,提升对话体验

    安装很简单,这里以谷歌浏览器为例 浏览器首选Chrome,Firefox,Edge,其他主流浏览器都是主动兼容这 3 个浏览器的; 在浏览器安装Tampermonkey浏览器拓展,可以从 Tampermonkey...keepchatgpt 脚本提供功能的介绍,不关心的可以直接于「阅读到此」即可。...关于 拦截跟踪 功能 每次访问 ChatGPT 网页的时候,都会被 OpenAI 进行大量的行为分析、用户跟踪、浏览器环境信息上传等,大家可以在控制台的网络选项卡看到。...经过实际测试,默认情况下打开 ChatGPT 页面有产生50至100个网络请求,勾选这个功能可以使得请求数缩少为只有35个并且 ChatGPT 完全正常运行。...资料参考 [1] Tampermonkey官网: https://www.tampermonkey.net/ [2] keepchatgpt官方GitHub: https://github.com/xcanwin

    75741

    Amazon Device EDI 数据库方案开源介绍

    用户安装好知行之桥EDI系统之后,只需要下载我们整理好的示例代码,并放置在知行之桥指定的工作区,即可开始使用。...Script 端口:使用 ArcScript 脚本语言完成各种可编程操作,如对文件进行重命名等。 7. SQL Server 端口:集成 SQL Server 到你的数据工作流拉取和推送数据。...如何在知行之桥EDI系统中部署上述工作流? 创建工作区 运行知行之桥 EDI 系统,导航到工作流选项卡并单击右上角的齿轮图标。...或者直接将 Amazon_Device.arcflow 拖拽到指定工作区。...如下图所示,分别是 SQLServer 数据库,接收到的一条来自Amazon的采购订单的头部信息和明细信息。 你启动并运行了吗?

    48540

    Google Earth Engine(GEE)——GEE最全介绍(7000字长文)初学者福音!

    ) 任务管理器(任务选项卡)处理长时间运行的查询 交互式地图查询(检查器选项卡) 搜索数据存档或保存的脚本 几何绘图工具 地球引擎代码编辑器的组件图 代码编辑器具有多种功能,可帮助您利用 Earth...可以从“文档”选项卡搜索和浏览文档。 脚本管理器(脚本选项卡) 该脚本选项卡是在代码编辑器的左侧面板旁边的API文档。脚本管理器将私有、共享和示例脚本存储在 Google 托管的Git存储库。...这有助于诊断脚本运行缓慢或由于内存限制失败的原因。要使用探查器,请单击“运行”按钮下拉菜单的“使用探查器运行”选项。...在脚本运行时,Profiler选项卡将显示脚本的资源使用表。单击运行按钮(不进行分析)将使分析器 选项卡消失并禁用分析器。...(请注意,矩形是平面几何图形,因此它们不能放置在具有测地线几何图形(线和多边形)的图层上。)

    1.7K11

    何在Ubuntu 14.04第1部分上查询Prometheus

    在本教程之后,您将了解如何根据维度,聚合和转换时间序列选择和过滤时间序列,以及如何在不同指标之间进行算术运算。在后续教程,我们将基于本教程的知识来介绍更高级的查询用例。...它应该如下所示: 您所见,有两个选项卡:Graph和Console。Prometheus允许您以两种不同的模式查询数据: “ 控制台”选项卡允许您在当前时间评估查询表达式。...运行查询后,表将显示每个结果时间系列的当前值(每个输出系列一个表行)。 “ 图形”选项卡允许您在指定的时间范围内绘制查询表达式。...它仍然需要您指定一个时间窗口([5m]),以了解这两个样本的最大回溯时间。irate()将对速率变化做出更快的反应,因此通常建议用于图表。...特别是当我们在操作的两侧都有不同大小的时间序列集时会出现这种情况,因为一侧的尺寸比另一侧的尺寸大。

    2.5K00

    在PowerDesigner设计物理模型2——约束

    不过唯一约束更直观的表达了对应列的唯一性,使得对应索引的目的更加清晰,所以一般建议创建唯一约束不是只创建唯一索引。...CHECK约束 CHECK分为列约束和表约束,列约束是只对表的某一个列进行的约束,可以在列的属性中进行设置,表约束是对多个列进行的约束,需要在表的属性中进行设置(其实列约束也可以在表约束设置)。...切换到表属性的Check选项卡,默认约束内容的“%RULES%”就是用来表示Rule设置的内容,如果我们还有一些其他的CHECK约束内容,不希望在Rule设置,而是在Check选项卡设置,那么只需要删除...比如规定ClassID必须小于10000,那么我们可以将Check内容设置如下: 生成的脚本如下: create table Class (    ClassID              int...,相互并不影响

    1K20

    爬虫:有什么让人眼前一亮的调试习惯与技巧

    首先打开开发者工具, 然后进入source选项卡 然后进入右栏 Event Listener Breakpoints 最后勾选Script 即可开启,当网站运行时。...特定XHR断点: 鼠标左键点击旁边的“+”号,在输入栏输入限定条件,Id,输入完成后Enter ?...文件映射Hook 在本地书写Hook函数,后使用DevToolssource选项卡的Overrides进行文件映射。当网页运行满足Hook条件时候,便会触发Hook函数。 ?...Tempermonkey Hook Tampermonkey 是第一个可以用来让 Chrome 支持更多 UserScript 的 Chrome 扩展,它可以加入更多的 Chrome 本身不支持的用户脚本功能...常见的实现方法有三种 DevToolssource选项卡的Overrides进行文件映射 Tempermonkey 以上操作,请参考上文 Charles或其他第三方工具 ? ?

    1.2K20
    领券