Если у вас есть хотя бы одна директива @grant
, отличная от none
, она активирует песочницу Tampermonkey. Эта песочница приведет к тому, что библиотеки @require
d будут назначать себя песочнице window
, а не на собственной странице * window
и ссылаться на window
переменная внутри кода usercript будет ссылаться на изолированную программную среду window
, а не на исходную страницу window
.
Если у вас @grant none
, это будет означать , а не для использования песочница, и @require
s приведет к тому, что свойства будут присвоены исходному window
(а ссылка window
внутри скрипта пользователя будет ссылаться на исходный window
).
Поскольку у вас есть @grant
, который включает песочницу, и вы ссылаетесь на window.jQuery
, которая будет ссылаться на версию песочницы jQuery, ничего не делая для страницы, поэтому она должна работать как нужно, независимо от того, уже jQuery на странице native или нет. (Поскольку вы находитесь в песочнице, не должно быть никаких конфликтов)