dmm.co.jp用 greasemonkeyスクリプト

dmm.co.jpではパッケージを拡大して見るとき、いちいちエフェクトが
かかる。おしゃれなのかもしれないけど、一秒でも早く拡大画像が見たい
ので、それ用の greasemonkeyスクリプトを書いた。

// ==UserScript==
// @name           DMM Package Image
// @namespace      http://d.hatena.ne.jp/syohex/
// @include        http://www.dmm.co.jp/*
// ==/UserScript==

(function() {
    var base = "http://pics.dmm.co.jp/mono/movie/";    

    function createPackageLink() {
        var imageNode = document.getElementsByName("package-image").item(1);

        if (imageNode === null) {
            return;
        }

        var product_id = (function () {
            var location = document.location.toString();
            return location.match(/cid=([^/]+)/)[1];
        })();

        var url  = base + product_id;
        if (product_id.match(/^15/)) {
            // for momotaro
            url += ("so/" + product_id + "sopl.jpg");
        } else {
            url += ("/" + product_id + "pl.jpg");
        }

        var newNode = document.createElement("a");
        newNode.setAttribute("href", url);
        newNode.setAttribute("target", "_blank");

        var textNode = document.createTextNode("パケ写拡大");
        newNode.appendChild(textNode);
        imageNode.parentNode.parentNode.appendChild(newNode);
    }

    createPackageLink();
})();

従来のパッケージ拡大ってリンクの下あたりに「パケ写拡大」という
リンクが追加されます。そっちだとエフェクトなしで、拡大画像が見れる
はずです。


Javascriptは普通にわかんないですね。きっともっとうまく書けるんだろう
けど、今のスキルではこの程度。将来性が十二分にある言語なんでしっかり
抑えないといけないですね。

追記

コードに間違いがあったので修正しました。


syohex/js_dmm_pake · GitHub
githubリポジトリを作りました。