-->
初心者 JavaScript 勉強会
猿でもわかる Greasemonkey
Yoshiori SHOJI(yoshiori@gmail.com)
web(http://yoshiori.org/)
JavaScript 片思い
そんなヨシオリです。
っていうか LT なのに
30分未満って長くね?

ウルトラスーパーアジャイル資料作成と名付け(ry
忙しかったんです!!!

とりあえず悔しいからチャットでUK虐めておいた

こうなってないことを祈る
ユ−ザー定義スクリプトの実行
なにそれ?
食べれるの?
やってみよう!!ここ
(インストールしたら再読込してね)
どぉ?
つ・ま・り

が実現できる!!
(;´Д`)スバラスィ ...ハァハァ
どうやんの?
まずは Greasemonkey をインストールしましょう
→ mozdev.org - greasemonkey: index
最初は色々遊んでみましょう みんなの公開してるスクリプトが集まっている場所があります。
→ Userscripts.org

少しは興味出てきた?
// ==UserScript==
// @name 20070714_presentation
// @namespace http://yoshiori.org/
// @include */presentation/20070714/index.html
// @version 1.0
// ==/UserScript==
(function(){
// ここに処理書く
})();
これだけw
Greasemonkey の スクリプトはページのJavaScript とは
違うグローバルスコープを持っています。
じゃぁ、無名関数で囲む必要ないのかというと
そういうわけではありません。
複数の Greasemonkey が同時に動くことも良くあるので
なるべくグローバルを汚さないようにしましょう。
逆にページのスコープに触りたいときは
unsafeWindow を使います。
unsafeWindows を使うとそのページのスコープのグローバルに
アクセスできます。
サイトによってはユーザースクリプト前提で
fnuction を用意してくれているサイトもあります。
そういった物にアクセスをするときは
unsafeWindow を使えます。
凄く便利です。
LDR とか LDR とか LDR とか
他にもあるので、興味があればどーぞ → ここ
prototype.js とか script.aculo.us とか jQuery とか
ユーザスクリプトでも使いたいよ!!( YUI もね)。
そんな時はGM_xmlhttpRequest で持ってきて
eval() しちゃえば使えます。
さらに、一番最初だけ持ってきて
GM_setValue(name, value) で保存しちゃって。
次からはそっちから持ってきて eval() とかでおk。
でも!!
セキュリティ的に問題有りです!!
そもそも Greasemonkey は危険をはらんでます。

なので、難読化や外部スクリプトの読み込みはあまりお奨めしません!!
どうしてもライブラリで使いたい部分があったら
ライブラリのソースをみて参考にした方が良いです。
凄く勉強になるし。
で、書いたらドンドン公開しましょう!!
公開するのは良いことです!!
みんな優しく教えてくれます!!

なのでみんなもどんどんJavaScript書こう♪
突然ですが!!クイズです!!
ちなみに 7/22 は誕生日です。
(0x20 歳になります)
プレゼント絶賛受付中です!!
Yoshiori SHOJI