如何使用带有Tampermonkey或Stylish的x.png更改名称为x.png的所有图像?

时间:2017-02-16 04:53:28

标签: javascript tampermonkey stylish

我目前正在为我的本地路由器制作一个黑暗的主题,它使用的图像很糟糕,我想要替换它们,但是经过Tampermonkey / Greasemonkey和Stylish的大量研究后,它们都添加了JavaScript我无法找到任何办法。

我只有想法用文件名替换图像说wan_up.png和另一张图像。

1 个答案:

答案 0 :(得分:1)

在时尚或类似的扩展中使用CSS。

#your-selector-here {
    height: 0 !important;
    width: 0 !important;
    /* these numbers match the new image's dimensions */
    padding-left: 32px !important;
    padding-top: 32px !important;
    background: url(http://example.com/your/image/here) no-repeat !important;
    background-size: 32px 32px; /* modern CSS property to scale the new image */
}

使用MutationObserver API在显示之前更改图像元素

MutationObserver有很多包装器,这里有一个基于setMutationHandler的例子:

// ==UserScript==//
// @name           Replace image
// @match          http://192.168.0.1/*
// @run-at         document-start
// @require        https://greasyfork.org/scripts/12228/code/setMutationHandler.js
// ==/UserScript==

setMutationHandler({
    processExisting: true,
    selector: 'img[src*="wan_up"]',
    handler: images => images.forEach(img => {
        img.src = 'http://foo/bar.png';
    })
});

编辑@match中的URL,选择要替换的图像,相应的新图像URL。