sa.yona.la identicon | xmny3v | sa.yona.la ヘルプ | タグ一覧 | アカウント登録 | ログイン

Re: sa.yona.la で投稿者名の前に identicon 付けるグリモンバージョンアップした

sa.yona.la identicon

返信

これ

http://zuu9xi.sa.yona.la/3

個人的に好きで使わせていただいてるのですが(Operaでも動く),「ソース」というリンク先が消えているみたい。素敵なGreasemonkeyなので勝手ながら内容をここに転載させていただきます。(いいのかな...もしダメそうならお知らせ下さい)


// ==UserScript==
// @name           sa.yona.la identicon
// @namespace      http://zuu9xi.sa.yona.la/
// @description    sayonara identicon
// @include        http://sa.yona.la/*
// @include        http://*.sa.yona.la/*
//
// version: 0.0.2 2008-09-23(Tue) 18:56:15
//   changed style sheet of identicon
//
// ==/UserScript==

window.addEventListener("load", function () {
    var authors = getElementsByXPath('//p[@class="entry-note"]/a[1]', null)
    var identiconSize = 15
    var identiconStyle = {
        width: identiconSize + "px",
        height: identiconSize + "px",
        display: "inline-block",
        position: "relative",
        top: "-1px",
        right: "3px",
    }
    var addIdenticon = function (a) {
        var elem = document.createElement('img')
        elem.src = "http://identicon.relucks.org/" +
            a.textContent + "?size=" + identiconSize
        for (var key in identiconStyle) {
            elem.style[key] = identiconStyle[key]
        }
        a.parentNode.insertBefore(elem, a)
    }

    // add identicon to pagerized entry
    if (typeof window.AutoPagerize != "undefined") {
        window.AutoPagerize.addFilter(
            function (docs) {
                var authors = docs.map(function(d) {
                    return getElementsByXPath('.//p[@class="entry-note"]/a[1]', d)[0]
                })
                authors.forEach(addIdenticon)
            }
        )
    }

    // add identicon to current page entry
    authors.forEach(addIdenticon)
}, false)

// copied from autopagerize (http://userscripts.org/scripts/show/8551)
function getElementsByXPath(xpath, node) {
    var node = node || document
    var doc = node.ownerDocument ? node.ownerDocument : node
    var nodesSnapshot = doc.evaluate(xpath, node, null,
        XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null)
    var data = []
    for (var i = 0; i < nodesSnapshot.snapshotLength; i++) {
        data.push(nodesSnapshot.snapshotItem(i))
    }
    return data
}

投稿者 xmny3v | 返信 (2) | トラックバック (0)

このエントリーへのトラックバックアドレス:

Re: sa.yona.la identicon

http://xmny3v.sa.yona.la/467

返信

わかったこと。sa.yona.laでpreタグを使っても等幅フォントにはならないけどタグそのものは有効。スペースとかは再現されるし,pタグとちがってコピペしたときに空行が入らない。

投稿者 xmny3v | 返信 (0)

Re: sa.yona.la identicon

いいですね、これ

返信

Operaにて使わせてもらいました。

sa.yona.laのイメージを崩さずイイ感じに映えますね。

投稿者 fqmktw | 返信 (0)

API | 利用規約 | プライバシーポリシー | お問い合わせ Copyright (C) 2024 HeartRails Inc. All Rights Reserved.