我正在使用Tampermonkey处理Shopify的信息中心/管理员的翻译。
出于安全考虑,我不希望Tampermonkey使用Shopify管理员信息中心的某些部分。 由商家创建的文本(产品,页面,集合,模板......),Tampermonkey将替换这些文本非常危险。
有两种方法可以解决这个问题:
@exclude
指令。我使用了后者,但脚本没有收听@exclude。这是用户名:
// ==UserScript==
// @name Shopify_Admin_Spanish
// @namespace http://*.myshopify.com/admin
// @version 0.1
// @description Tu tienda Shopify, por detrás, en español!
// @exclude https://*.myshopify.com/admin/products
// @exclude https://*.myshopify.com/admin/collections
// @exclude https://*.myshopify.com/admin/blogs
// @exclude https://*.myshopify.com/admin/pages
// @exclude https://*.myshopify.com/admin/themes
// @match https://*.myshopify.com/*
// @copyright microapps.com
// ==/UserScript==
PS。我使用谷歌浏览器进行了所有检查,并且不愿意使用任何其他浏览器。
答案 0 :(得分:6)
@exclude
非常精确。您需要在每个排除行上放置一个尾随星号。 EG:
// @exclude https://*.myshopify.com/admin/products*
// @exclude https://*.myshopify.com/admin/collections*
// @exclude https://*.myshopify.com/admin/blogs*
// @exclude https://*.myshopify.com/admin/pages*
// @exclude https://*.myshopify.com/admin/themes*
考虑(并安装)此Tampermonkey脚本:
// ==UserScript==
// @name _match and exclude testing
// @match http://*.stackexchange.com/*
//
// @exclude http://*.stackexchange.com/questions*
// @exclude http://*.stackexchange.com/tags
// @require http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js
// @grant GM_addStyle
// ==/UserScript==
$("body").prepend ('<h1 style="background: yellow;">Match Script fired on this page.</h1>');
如果您随后访问arduino.stackexchange.com/tags,脚本将不会触发,但在访问时:
它会!
将第二个排除行更改为:
// @exclude http://*.stackexchange.com/tags*
解决了这个问题。
如果仍有问题,请指定您的Chrome,Tampermonkey和操作系统版本。并提供证明问题的目标页面。