Добавление jQuery UI в Greasemonkey script завершается с помощью внешнего файла CSS

Я пытаюсь добавить jquery-ui в Greasemonkey script. мой полный код: test.user.js:

// ==UserScript==
// @name           Test
// @namespace      rajat.khandelwal
// @description    Test script
// @include        *
// @require        js/jquery-1.6.2.min.js
// @require        js/jquery-ui-1.8.16.custom.min.js
// @require        css/ui-darkness/jquery-ui-1.8.16.custom.css

// ==/UserScript==
alert('hi');

В текущей директории я добавил JS и CSS-каталог. Он выдает ошибку, говоря syntax error in css

Error: syntax error
Source File: file:///C:/Users/Rajat/AppData/Roaming/Mozilla/Firefox/Profiles/poxivdqy.default/gm_scripts/test/jquery-ui-1816custom.css
Line: 13

Строка 13:

.ui-helper-hidden { display: none; }

В чем проблема? Как я могу добавить jquery-ui и использовать его в своем usercript?

Ответ 1

// @require в настоящее время работает только с файлами javascript. Эта ошибка заключается в попытке проанализировать CSS как JS.

Используйте // @resource для файлов CSS, например:

// ==UserScript==
// @name        Test
// @namespace   rajat.khandelwal
// @description Test script
// @include     http://YOUR_SERVER.COM/YOUR_PATH/*
// @require     js/jquery-1.6.2.min.js
// @require     js/jquery-ui-1.8.16.custom.min.js
// @resource    customCSS css/ui-darkness/jquery-ui-1.8.16.custom.css
// @grant       GM_addStyle
// @grant       GM_getResourceText
// ==/UserScript==

var newCSS = GM_getResourceText ("customCSS");
GM_addStyle (newCSS);

alert('hi');

Однако jQuery-UI CSS сильно использует фоновые изображения. Изображения, которые включаются через относительные пути.

Чтобы получить максимальный эффект CSS jQuery-UI, я больше не рекомендую добавлять его через GM_addStyle().

Используйте введенный <link>, как показано в этот полный, jQuery-UI пример usercript.