デジャブかもしれません
twitterを使ってみんなでアイデアを共有するサービス、ひらめいったーのはてなスターサイト上で、twitterユーザのアイコンが表示されるようにするグリモン書いた。
2008/01/31
タイピング激速グリモン書いた
んー。
こんな速度、人間じゃありえん!
ちなみにこのスクリプト、なんでこんな変な事しているかといいますと...
まずど頭で、「z+z+z+ ...」ってやってる部分は、あまりにタイプスピードが速すぎて、内部の配列がオーバーフローしてしまっているのでキャパを取り直しています。次にループ内で再度「t」を取り直しているのは、このSpeedtestがイカサマ防止の為にタイプ中にワードを増やす処理が入っており、それをハンドリングする為に入っています。
// ==UserScript==
// @name Speedtest Ikasama
// @namespace Speedtest.Ikasama
// @include http://speedtest.10-fast-fingers.com/
// ==/UserScript==
var w=document.getElementById('eingabe');
var v=document.getElementById('vorgabe');
var s = 0;
var z = unsafeWindow.pruefstring;
var f1 = unsafeWindow.welchedown;
var f2 = unsafeWindow.welcheup;
unsafeWindow.wort = (z+z+z+z+z).split(' ');
(function go() {
clearTimeout(s);
var t = v.innerHTML.replace(/<[^>]+>/g, '');
if (t){
var i=0;
while(true){
t = v.innerHTML.replace(/<[^>]+>/g, '');
var e = document.createEvent('KeyboardEvent');
e.initKeyEvent('keypress', true, true, window, false, false, false, false, 0, t.charCodeAt(i));
w.dispatchEvent(e);
f1(e);f2(e);
if (++i >= t.length) break;
}
}
s = setTimeout(go, 0);
})();
こんなの使っても
8位って事は、1位の人もHackingやん!www![]()
こんな速度、人間じゃありえん!
speedtest.ikasama.user.js# 10-fast-fingers.com - Speedtest
ちなみにこのスクリプト、なんでこんな変な事しているかといいますと...
まずど頭で、「z+z+z+ ...」ってやってる部分は、あまりにタイプスピードが速すぎて、内部の配列がオーバーフローしてしまっているのでキャパを取り直しています。次にループ内で再度「t」を取り直しているのは、このSpeedtestがイカサマ防止の為にタイプ中にワードを増やす処理が入っており、それをハンドリングする為に入っています。
JSONでHTMLを取得するYahoo! Pipesが凄い
こりゃすげ。
これまでにも同様の事が出来るサービスはあったけど、Yahoo! Pipesがサポートしたってのは強い。
試しにYahoo! JapanのHTMLをレンダリングするサンプルを作ってみた。
以下コード
URLを渡すとページの内容(htmlソース)をJSONPとかで取得できるAPIをYahoo! Pipesで作った(管理人日記) - むぅもぉ.jpこれで色んなことが出来るようになるし、グリースモンキーに頼っていたクロスドメインな処理がJSONだけで出来るようになる。
Yahoo! PipesにFetch Pageモジュールが追加されたので、さっそく作ってみた。
これまでにも同様の事が出来るサービスはあったけど、Yahoo! Pipesがサポートしたってのは強い。
試しにYahoo! JapanのHTMLをレンダリングするサンプルを作ってみた。
以下コード
<script type="text/javascript"><!--
function on_load_document(data) {
document.getElementById('yahoo_html').innerHTML = data.value.items[0].description;
}
function load_document() {
var url = 'http://www.yahoo.co.jp/';
var s = document.createElement('script');
s.charset = 'utf-8';
s.src = 'http://pipes.yahoo.com/poolmmjp/page_loader?url=' + encodeURIComponent(url) + '&_render=json&_callback=on_load_document';
document.body.appendChild(s);
}
--></script>
<input type="button" onclick="load_document()" value="Yahoo! Japanを表示">
<div id="yahoo_html"></div>
実行結果は↓

