サイトの rendering のベンチマークをするブックマークレット

たぶんこんな感じでいいんだと思う…5秒ほど body の表示非表示を繰り返して、一回の点滅にかかった時間、表示にかかった時間、消すのにかかった時間、をそれぞれ出す。結果はサイトの一番下に div としてくっつく。点滅の時間は JS の実行時間が入るようになってるので、表示時間+消す時間より微妙に多くなるようになってます。

javascript:c=-1,n="none",f=function(){e=(new(Date)()).getTime()-s,c++,b=document.body,t=b.style,d=t.display;d!=n?z+=e-p:(y+=e-p);e>5000&&d!=n?b.innerHTML+='<div>total: '+e/c+',show:'+z/c+',hide:'+y/c+'(ms)</div>':((t.display=d==n?"block":n),p=(new(Date)()).getTime()-s,setTimeout("f()",0));},z=0,y=0,s=(new(Date)()).getTime(),p=0;f()

Rendering にかかった時間って測れるのかなぁと思ってたのだけど、 setTimeout で 0 を指定してやると rendering が終わったら次が呼ばれる感じみたいだ。

適当に測ってみるに linux chrome 速いなぁというかこれは linux firefox が遅いのかなぁ。

なにかあれば下記メールアドレスへ。
shinichiro.hamaji _at_ gmail.com
shinichiro.h