Greasemonkey

更新日期: 2015-12-12 阅读次数: 11906 分类: Browser

常用的脚本

  • Download YouTube Videos as MP4
  • Straight Google

在 Greasemonkey 中使用 jQuery

// ==UserScript==
// @name          jQuery Example
// @require       http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js
// ==/UserScript==

// Append some text to the element with id someText using the jQuery library.
$("#someText").append(" more text.");

需要注意的是,增加 jQuery 之后,需要重新安装该脚本。

http://stackoverflow.com/questions/859024/how-can-i-use-jquery-in-greasemonkey

如何在终端下管理 Greasemonkey 脚本

访问网页中定义的 js 变量

经常能看到一些网站在 web 页面中使用一些内嵌的 js 脚本,往往里面包含了许多 有用的变量值,例如视频 id,相关资源的链接等。

<script type="text/javascript">
    var home_url="http://sunzhongwei.com";
</script>

如果想使用油猴脚本获取上面的 home_url 变量的值,那么就需要使用 API object unsafeWindow

alert(unsafeWindow.home_url);

是否需要使用 $(document).ready

不需要。只需要写一个 main 函数,然后调用 main 函数即可。例如:

https://github.com/derekbailey/youtube_download_button_generator/blob/master/youtube_download_button_generator.user.coffee

原因:

Greasemonkey 脚本的运行时机类似于 window.onload,即全部页面加载完毕,包括图片 即晚于 $(document).read (只加载文本部分,不包括图片等资源).

参考:

  • http://wiki.greasespot.net/DOMContentLoaded
  • http://stackoverflow.com/questions/3698200/window-onload-vs-document-ready

关于作者 🌱

我是来自山东烟台的一名开发者,有敢兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式