Greasy Fork镜像 还支持 简体中文。

Greasy Fork镜像++

加入多種功能並改善Greasy Fork镜像的體驗

< 腳本Greasy Fork镜像++的回應

評論:正評 - 腳本一切正常

§
發表於:2025-07-19

Currently the install buttons it adds does not work. Clicking them does nothing at all.

I had an old backup version of (Greasy Fork镜像+ v2.0.6) can not find any newer version and those install buttons still worked. That version does however also have bugs like the install buttons does not show next to every script but at least the install buttons does open the link in a new tab. Any plans to fix this?

§
發表於:2025-07-20

This is not due to this script. It is because of your browser or your userscript manager.

If you use Chrome >= 138, you need to enable the userscript permission in chrome extension setting page for the userscript manager.

There are only two userscript managers can be used in Chrome >= 138

Tampermonkey BETA

https://chromewebstore.google.com/detail/tampermonkey-beta/gcalenpjmijncebpfijmoaglllgpjagf

ScriptCat

https://chromewebstore.google.com/detail/scriptcat/ndcooeababalnlpkfedmmbbbgkljhpjf

§
發表於:2025-07-20

I have installed Tampermonkey Beta tested it and the result is failed.
I have installed ScriptCat Tested it and the result failed.

What I did:

Allow User Scripts
The extension will be able to run code which has not been reviewed by Vivaldi. It may be unsafe and
you should only enable this if you know what you are doing.

Enabled that and pinned it made sure the script are loading and that with each test I disabled any other Userscript Manager first. Made sure no other instances were running. All of them does indeed display the install button. However, it does not actually do anything onclick.

The only way I can get it to sorta work is by right clicking that install button and then click on "Open Link In New Tab"

I have used Tampermonkey, Tampermonkey Beta, ViolentMonkey, ScriptCat to test this and none of them work on that button. All other scripts are working though.

§
發表於:2025-07-21

You are using Vivaldi.

In the Vivaldi extension management page, uninstall / disable all other userscript managers.

Leave only ScriptCat (you ScriptCat shall be version 0.18.2 or above)

"Allow User Scripts" make sure you clicked it.

Restart Vivaldi completely.

§
發表於:2025-07-22

Just a heads-up, everything from your last suggestion had already been tried and ruled out before it was even posted. It was also tested across multiple browsers, including Opera GX and Vivaldi. Still no response from the install button.

After reviewing both the original "+" script and the “++” fork, the issue was clearly not browser-related or user error. The install button itself was dead. Clicking it did absolutely nothing. Right-click and "Open in new tab" still worked, but obviously, that's not how it's meant to function.

MonkeyGPT looked into the source and confirmed the problem was with the install modal logic. When the modal fails to load properly, which happens often, the click handler silently breaks. No error, no feedback, just a broken button.

Rather than trying to fix the internals of GF++ directly, MonkeyGPT deployed a separate userscript that bypasses the broken logic entirely.

The script waits until all the install buttons are on the page, then hijacks them. It replaces the existing links with clean ones that just load the .user.js file directly. No modal, no delay, no broken behavior.

The result: problem solved.

The script is called
GreasyFork++ Install Button Fixer

It restores the basic, expected behavior: you click "Install" and the script installs. No need to open in a new tab manually, and no more wondering why nothing happens.

Might be worth integrating a fix like this directly into GF++ so others don’t have to use external patches just to make the button work.

Appreciate the project. Happy to share the fix if it helps.

It is working on all userscript managers with the bypass. (Including ViolentMonkey)

§
發表於:2025-07-22
編輯:2025-07-22

Oh. Thanks for pointing it out.

So, the easy solving is changing

    const setupInstallLink = (button) => {
        if (!button || button.className !== 'install-link' || button.nodeName !== "A" || !button.href) return button;
        button.addEventListener('pointerdown', installLinkPointerDownHandler);
        return button;
    };

to

    const setupInstallLink = (button) => {
        if (!button || button.className !== 'install-link' || button.nodeName !== "A" || !button.href) return button;
        // button.addEventListener('pointerdown', installLinkPointerDownHandler);
        return button;
    };

right?

Please check whether the above commenting works for you or not.

§
發表於:2025-07-22

I found that there is hackjack from GreasyFork's coding (install.js)

§
發表於:2025-07-22

I found that there is hackjack from GreasyFork's coding (install.js)

I created the issue in GitHub to let Jason review.

https://github.com/greasyfork-org/greasyfork/issues/1455

§
發表於:2025-07-22

Added anti-hackjack in v3.3.9 (as a temporary solution)

§
發表於:2025-07-22

Just tested the latest update and yes, it is working now.

After disabling the bypass we (ScriptKiddyMonkey & MonkeyGPT) previously created, I re-tested everything with the new v3.3.9 update. Confirmed: install buttons are responding properly again without needing any external patching or modal bypass.

So whatever changes were made in this update fixed the underlying issue. No need for the bypass script anymore. Clean install functionality is back across all tested managers, even ViolentMonkey.

Appreciate the quick fix.

發表回覆

登入以回覆

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址