`

强强联手,在Greasemonkey中使用jQuery类库

阅读更多
轉 : http://cuimingda.com/2008/10/using-jquery-in-greasemonkey-script.html

Greasemonkey是Firefox下非常强大一个扩展,可以为每个网站编写自定义脚本,定制各种功能。而jQuery是一个非常强大的JavaScript类库,而且只有15k大小。但怎样能把两者结合起来呢,本文就将介绍一个代码片段,实现这种强强组合,让你的脚本开发更加便利。

下面是Greasemonkey一段脚本的雏形,基本除了头信息都包括了,只要在main里面写具体的代码就可以,使用这段脚本需要注意的是,网站中一定不能使用其他JavaScript框架,因为这里共用了$符,会冲突的,最后的结果是网站中的脚本可能无法正常运行。

(function() {
var load = function() {
var scriptTag = document.createElement('script');
scriptTag.src = 'http://jquery.com/src/jquery-latest.js';
scriptTag.type = 'text/javascript';
document.getElementsByTagName('head')[0].appendChild(scriptTag);

load = function() {
   if(typeof unsafeWindow.jQuery == 'undefined') { window.setTimeout(load,100); }
   else { $ = unsafeWindow.jQuery; main(); }
  };
  return load();
}; load();

function main() {
  // 在这里写我们自己的代码
}
})();


做一下简要说明:

    * 引入懒惰定义模式就是为了处理那些只调用一次的代码。
    * 因为是在Greasemonkey中使用,所以把jQuery直接指向了网站上的最新版本源代码,因为不是像扩展一样在本地调用,所以执行的时候肯定会增加时间,明显的会感到从jQuery网站读取脚本,索性脚本不大,只有15k。
    * 自己的代码直接放在main里就可以了,如果有一些自定义函数,和main同级就可以。
    * 因为加载jQuery脚本要从第三方网站读取数据,肯定是需要时间的,所以代码中使用了setTimeout来进行检测,直到对象加载完毕才执行代码。
分享到:
评论

相关推荐

    greaseMonkey

    在GreaseMonkey的核心概念中,主要涉及以下几个关键知识点: 1. **用户脚本(User Scripts)**:GreaseMonkey 的主要工作原理就是用户脚本。这些脚本是用JavaScript编写的,可以注入到任何网页中运行,从而改变页面...

    深入浅出Greasemonkey.pdf

    在实例教学章节中,文档通过案例分析的方式,如GMailSecure、BloglinesAutoload、Ain'tItReadable等,向用户展示了如何使用Greasemonkey解决实际问题。这些案例深入浅出地展示了Greasemonkey的强大功能,以及用户...

    深入浅出Greasemonkey,油猴脚本入门

    在学习 Greasemonkey 的过程中,您需要了解 Greasemonkey 的基本概念、用户脚本的编写、调试用户脚本、公共模式、实例教学、高级话题等内容。通过学习这些内容,您将能够充分发挥 Greasemonkey 的功能,提高您访问...

    greasemonkey

    greasemonkey-0-8-20090123-1-en-win-

    深入Greasemonkey

    最后,书中可能会探讨Greasemonkey与其他Firefox扩展的协同工作,以及它在Web应用自动化和测试中的作用。Greasemonkey与bookmarklets(书签脚本)相比,提供了更强大和灵活的定制能力,对于开发者和高级用户来说,是...

    深入浅出 Greasemonkey优化

    JavaScript Shell允许用户在浏览器中执行JavaScript代码片段,非常适用于测试脚本逻辑: - **打开开发者工具**:按F12键打开开发者工具。 - **切换到“Console”选项卡**:直接输入JavaScript代码并回车执行。 ####...

    Greasemonkey Hacks

    Greasemonkey Hacks.chm

    深入浅出_Greasemonkey

    《深入浅出_Greasemonkey》是一本关于如何使用Greasemonkey扩展的书籍,旨在指导用户编写和管理能够改变网页行为和外观的用户脚本。Greasemonkey是一个在Firefox浏览器上运行的扩展程序,通过允许用户在客户端执行...

    Firefox用户脚本管理器(Greasemonkey) v1.10火狐插件.rar

    Greasefire扩展:同Greasemonkey扩展配合使用,自动显示在userscripts.org的脚本库中是否存在可以在当前正在浏览网站上使用的脚本,如果存在Greasemonkey的猴头图标背景就会变为彩色的。右键点击猴头图标,最上面一...

    GreaseMonkey.xpi

    FIREFOX专用GreaseMonkey.xpi

    firefox插件greasemonkey-0.8.20080609.0-fx_PConline.xpi

    firefox插件greasemonkey-0.8.20080609.0-fx_PConline.xpi

    深入浅出 Greasemonkey

    在“GNU 通用公共许可证(自由软件基金会)(版本2以及更新版本)”许可下,您可以随意的再分发和/或修改它们。我们发行这本书、及其样例代码和视频文件,希望它能对您有所帮助。但是我们并没有提供任何担保!请查阅GNU ...

    Greasemonkey Port:SeaMonkey浏览器的Greasemonkey端口-开源

    请注意,不能保证XPI安装将在公告的... 当前的HEAD可能无法直接在Firefox中使用,您也不应在Firefox中使用此fork。 仅适用于SeaMonkey用户。 https://openuserjs.org/announcements/Greasemonkey_Port_Update上的公告

    Chrome最新4.0版本支持GreaseMonkey脚本

    在Chrome中管理GreaseMonkey脚本与管理普通扩展非常相似。在浏览器的扩展面板(chrome://extensions/)里,你可以轻松启用或禁用脚本,甚至卸载它们。这种直观的管理方式使得用户可以根据个人需求随时调整脚本设置。...

    Script:部落战争恶霸的Greasemonkey扩展

    -军阀TW扩展Sangu软件包是适用于Firefox,Opera和Chrome的Greasemonkey脚本,可通过在几乎每个页面(尤其是村庄概览页面)上添加额外功能来提高《游戏速度并优化游戏流程。 在可用,或与安装。支持Sangu软件包支持...

    油腻的monkey:Greasemonkey是Firefox的用户脚本管理器

    JavaScript作为Greasemonkey支持的主要语言,是Web开发中广泛使用的脚本语言,具有丰富的库和框架支持,使得编写用户脚本变得相对简单。 使用Greasemonkey,首先你需要在Firefox浏览器上安装这个插件,然后可以从...

    greasemonkey-scripts:Greasemonkey Tampermonkey脚本

    我之所以开发此功能,是因为我听的某些曲目的专辑封面在工作环境(NSFW)中可能令人反感。 亚马逊每件价格 该脚本添加了每件物品的估计价格。 我说是估计的,因为知道项目是否以包装出售的唯一方法是使用基于标题的...

    HTML兼容浏览器的右键菜单

    例如,jQuery中可以使用`$(document).on('contextmenu')`来监听右键点击事件。 综上所述,创建一个兼容不同浏览器的右键菜单涉及HTML结构、JavaScript事件处理、CSS样式设计等多个方面。通过合理的编程和设计,我们...

    greasemonkey-4.11.xpi

    greasemonkey-4.11.xpi

Global site tag (gtag.js) - Google Analytics