開発メモ

気負わずに、ちょくちょく勉強進めていきたい。。。

ユーザスクリプト初めの一歩【chromeの場合】

ユーザスクリプトとは

ユーザが登録したスクリプトを任意のwebブラウザ上で
呼び出す事が出来る。

GreaseMonkeyとは

ユーザスクリプトでググってると
GreaseMonkeyという単語をよく目にする。

これはFireFoxのアドオンで、「Firefox」上で「ユーザスクリプト」を
動かせるようにするものである。

ブラウザによって、ユーザスクリプトの挙動が違うので
気をつける。

ユーザスクリプトの書き方について

下記3点、注意が必要です。(主に自分へ向けて)

1.メタ情報を指定
// ==UserScript==
// @name           sample
// @namespace      aczz.hateblo.jp
// @description    sample
// @match http://aczz.hateblo.jp/*
// ==/UserScript==


@name スクリプト名(任意)
@namespace 名前空間の指定(スクリプト作成者の持つドメインなどが定番)
@description スクリプトの説明(任意)

@match
chromeの場合は、スクリプトを実行したいURLの設定は
@matchで行ったほうがよい。

ユーザースクリプトChromeで実行したいページを指定する主な方法は、@matchです。その使用例は以下の通りです。
// ==UserScript==
// @match http://*/
// @match http://*.google.com/*/
// @match http://www.google.com/*/
// ==/UserScript==
@match構文の詳細な情報についてはこれらのコメントを参照して下さい。
現在、ChromeGreasemonkeyの@include構文をサポートしていますが、推奨はしていませんし使えなくなる可能性もあります。”また@includeよりも@matchの方がユーザーにはどのページで実行するのかわかりやすいので@matchを勧めます。”

http://d.hatena.ne.jp/zuzu_sion/20090325/1238042619
2.必要ならjQueryを読み込み

chromeでは、@requireが使えないので自前で読み込んでくる

参考サイト
http://iwa4.hatenablog.com/entry/2013/07/02/181645

3.ファイルを保存する

ユーザスクリプト書けたら、保存する。
必ず、ファイル名末尾に「.user.js」を入れる。

追記

ちょいと、chrome拡張で何か試したりテストしたい場合は
chrome拡張の「jsshell」が便利です。

jQueryも、特に前準備も必要なく使えるので、イイ。

http://www.chrome-life.com/chrome/3792/

今考えてること

スクリプトを実行するHTMLのレイアウト変わると、DOMいじってた場合死ぬ。

レイアウト変わっても、なるべく死なないようにする設計に
出来ないだろうか。

言語関わらず、HTMLをスクレイピングして整形する処理
全てに言えることだろうけれども。。。

荒い「初めの一歩」まとめになってしまいましたが
以上。