Greasemonkey 1.0 の導入により、Greasemonkey スクリプトで対話するときに jQuery に依存するユーザーに予期せぬ問題が発生しました。 jQuery を使用する Web サイトでも同様です。この問題は、@grant ディレクティブの実装に起因します。
この競合は、jQuery の読み込み方法と、スクリプト内および訪問した Web ページ内での相互作用に影響を与える、grant ディレクティブの機能によって発生します。以前は、Greasemonkey スクリプトは主にサンドボックス環境で実行され、潜在的な競合を防止していました。ただし、@grant ディレクティブはこの動的を変更するため、外部 Web サイトに存在する jQuery との潜在的な衝突が可能になります。
この問題を解決してサンドボックス機能を復元するには、ユーザーは特定の @ を含めることで以前の操作方法に戻すことができます。値を付与します。次の行でスクリプトのメタデータ ブロックを修正します:
// @grant GM_addStyle // @grant GM.getValue // ==/UserScript==
このアプローチにより、サンドボックスが確実に復元され、スクリプトが競合することなくシームレスに機能できるようになり、Tampermonkey や Violentmonkey などの他の優れた拡張機能との互換性が維持されます。
以上がGreasemonkey 1.0 の @grant ディレクティブは、jQuery と Web サイトの競合をどのように引き起こしますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。