素人がプログラミングを勉強していたブログ

プログラミング、セキュリティ、英語、Webなどのブログ since 2008

連絡先: すかいぷ:javascripter_  か javascripter あっと tsukkun.net skypeのほうがいいです

Greasemonkey0.8の@require

一度取得したものをずっと使いまわすのなら、SITEINFOの取得がこんなに楽に。

// ==UserScript==
// @name           getsiteinfo_test
// @namespace      http://d.hatena.ne.jp/javascripter/
// @include        http*
// @require        http://wedata.net/databases/AutoPagerize/items.json?callback=jsonpCallback
// ==/UserScript==
function jsonpCallback(data) {
  var siteinfo = null;
  data.some(function({data: i}) {
    if (RegExp(i.url).test(location.href) &&
        document.evaluate(i.nextLink, document, null, 3, null) &&
        document.evaluate(i.pageElement, document, null, 3, null)) {
      siteinfo = i;
      return true;
    }
    return false;
  });
  location.href = 'javascript:console.log(' + uneval(siteinfo) + ');'
}

@requireはライブラリの読み込みとかに使う、Greasemonkeyの新機能。