将jQuery UI添加到Greasemonkey脚本失败,外部CSS文件

时间:2011-12-31 13:23:38

标签: jquery jquery-ui firefox greasemonkey userscripts

我正在尝试将jquery-ui添加到Greasemonkey脚本中。我的完整代码: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并在我的用户脚本中使用它?

1 个答案:

答案 0 :(得分:37)

// @require目前仅适用于javascript文件。该错误来自尝试将CS​​S解析为JS。

对CSS文件使用// @resource,如下所示:

// ==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大量使用背景图像。通过相对路径包含的图像。

为了获得jQuery-UI CSS的最大效果,我不再建议通过GM_addStyle()添加它。

使用this complete, jQuery-UI example userscript中显示的注入<link>