IT戦記 このページをアンテナに追加 RSSフィード Twitter

2009-01-22

新ブックマークレットを使っていなくても、ブクマ時に画像を指定できるようにする方法

ブックマークレットでは

ブックマーク時に画像を指定できるみたいですね。

f:id:amachang:20090122155907j:image

この右側の画像をクリックすると出来るみたいです。

詳しくは以下の「画像を設定・変更する」を参照

ブックマークレットの使い方

で、これが出来ると結構うれしいです

何がうれしいか

ホッテントリとかに出たときに以下のように画像も一緒に表示されるんです。

f:id:amachang:20090122160106j:image

キャッチーな画像だとやっぱり読みたくなりますしね!

でも、新ブックマークレットじゃないとそれができない

><かなしい!

だって、自分もやりたいじゃないですか!

というわけで

ブックマークレットで出来るようにする方法を紹介します。

以下のように form#add-form 要素に image という名前の input 要素を作ってそこに画像の URL を書いて送信すればいいみたいです

(document.getElementById('add-form') || document.getElementById('bookmarklet-form')).appendChild(Ten.Element('input',{name:'image'}))

ブックマークレットにするなら

こんな感じで

javascript:(document.getElementById('add-form') || document.getElementById('bookmarklet-form')).appendChild(Ten.Element('input',{name:'image'})); void(0);

ぐりもんにするなら

こんな感じですかね

// (ぐりもんの定義、略)

var form = (document.getElementById('add-form') || document.getElementById('bookmarklet-form'));

if (form){
    form.appendChild(unsafeWindow.Ten.Element('input',{name:'image'}));
}

検索順位が何位だとページビューがどれくらいかを教えてくれるツールが登場

ドメイン名がいいですね

あらまきじゃけ.jp

検索数 チェックツール | aramakijake.jp

たとえば

渋谷で調べてみた

f:id:amachang:20090122134447j:image

渋谷というキーワードで 1 位を取ると Yahoo から 7500 人が訪れるそうです。

また、渋谷 + 別のキーワードでの結果も横に出てるのが便利ですね。

おもしろいですねー。

1/29, 1/30 は Adobe MAX 2009 で話ます!

Adobe のイベントであえて JavaScript やります

id:gyuque, id:yukoba さんとかも出ます。

僕は空気読まず定番の DOM パフォーマンスの話でもしてこようかなーっと思っています!

ぜひぜひ、いらしてください!

登録は明日まで><!

らしいです!

Adobe MAX 2009 詳細

登録もココで!

http://jp.max.adobe.com/

会場はここです!

ホテル グランパシフィック LE DAIBA (東京都港区台場)

地図

http://maps.google.co.jp/maps?ll=35.624652,139.771371

Safari や Google Chrome でもはてなスターで選択範囲を引用できるようにする Bookmarklet

今まで

Google Chrome ではてスタしても、選択範囲の引用ができなかった><

というわけで

ブックマークレット作った。

以下のブックマークレットを実行してから、テキストを選択して、はてスタすると引用できるようになる。

javascript:window._gs = window.getSelection; document.onselectstart = document.ondblclick = function() { window._s = _gs()+'' }; window.getSelection = function() { return window._s || '' }; void(0);

この方法だと、 getSelection を上書きしてるので、グリモン的に自動読み込みでやるのはお勧めしない。

もし、 HatenaStar.js を直すとしたら。 以下、

    // ハンドラーを定義
    handleSelection: function() {
        Ten.DOM._selectedText = getSelection()+'';
    },

    getSelectedText: function() {

        // WebKit 用の判定追加
        if (navigator.userAgent.match(/AppleWebKit/))
            return (Ten.DOM._selectedText || '');


        else if (window.getSelection)
            return '' + (window.getSelection() || '');
        else if (document.getSelection)
            return document.getSelection();
        else if (document.selection)
            return document.selection.createRange().text;
        else
            return '';
    },

:
:

    // 以下のようにイベント追加
    if (navigator.userAgent.match(/AppleWebKit/)) {
        new Ten.Observer(document, 'onselectstart', Ten.DOM, 'handleSelection');
        new Ten.Observer(document, 'ondblclick', Ten.DOM, 'handleSelection');
    }

って感じ。

(追記)

id:jkondo 「したい」

はてなアイデア - Safariでもスター引用機能を使いたい。

やった!

試験勉強

今、ものすっごい試験勉強してる。