はてなダイアリー上でニコニコ動画のサムネイルを表示するGreasemonkey

はてなダイアリーではニコニコ動画のサムネイルが表示できないので、Greasemonkeyを使って表示させてみました。
ニコニコ動画サムネイル on はてなダイアリー インストール

詳細

ニコニコ動画のリンクを探して、サムネイルタグに置換しています。URLのリンク自動変換によって張られたリンク(href属性とテキストが同じリンク)だけを対象としています。

スクリーンショット


↑こういう感じの日記が

↑こういう感じになります。

ソース

// ==UserScript==
// @name ニコニコ動画サムネイル on はてなダイアリー
// @namespace http://d.hatena.ne.jp/drgqst/
// @description はてなダイアリーでニコニコ動画のサムネイルを表示するぐりもん
// @include http://d.hatena.ne.jp/*
// ==/UserScript==
//
// はてなダイアリーではニコニコ動画のサムネイルを表示することができません。
// なのでGreasemonkeyで無理やり表示させてしまおう。
// ニコニコ動画のURLをサムネイルに置き換えます。
//
(function(){
    // リンク要素をすべて取得。
    var links = document.getElementsByTagName('a');
    if( links == undefined ) {
        return;
    }
    
    for( var i=links.length - 1; i>=0; i-- ) {
        var link = links[i];
        var url = link.href.match( /^http\:\/\/www\.nicovideo\.jp\/watch\/(\w+)$/ );
        
        if( url && url[1] ) {
            // hrefとテキストが違う文字列の場合は置き換えない
            if( url[0] != link.innerHTML ) {
                break;
            }
            
            // iframe要素を作ってリンク要素の前に差し込む
            var iframe = document.createElement('iframe');
            iframe.width = '312';
            iframe.height = '176';
            iframe.src = 'http://www.nicovideo.jp/thumb/' + url[1];
            iframe.scrolling = 'no';
            iframe.style.border = 'solid 1px #CCC';
            iframe.frameborder = '0';
            link.parentNode.insertBefore( iframe, link );
            
            // リンク要素を消してしまう
            link.parentNode.removeChild( link );
        }
    }
})();

不具合とかありましたら、コメントで教えて下さい。