2009-01-01から1年間の記事一覧

JavaScriptは悪くない

JavaScript の不思議な面白さ - Yahoo! JAPAN Tech Blog JavaScript の不思議な面白さ - 第二回 - Yahoo! JAPAN Tech Blog JavaScript の不思議な面白さ - 第三回 - Yahoo! JAPAN Tech Blog JavaScript の不思議な面白さ - 第四回 - Yahoo! JAPAN Tech Blog …

IEでlabel内の画像をクリック可能にする

ウノウラボ by Zynga Japan: IEでlabelの子要素に画像を含めるをより汎用的に実装してみます。まず、修正方針は以下の2点。 HTML側に処理を書かない(onclickは使わない) IEだけで処理されるようにする 素直に書いてみるとこういった感じになります。 /*@cc_o…

Chromium/Google Chrome

Chromium/Google Chromeの情報源をリストしてみる*1 リリース関連情報 Code Review Release Notes - The Chromium Projects Chrome Releases Google Japan Blog(多少遅れるが日本語訳のリリース情報がある) Google Chrome Blog 開発者向け順。 issues chromi…

OperaのCanvasでParticles(Sand/Snow)

ふと、Saqoosha 先生の Snow*1をCanvasで出来たりするのかなーと気になって、ちょっと調べてみたら、OperaのCanvasが凄いと言われたので、早速移植してみました。http://ss-o.net/test/opera.snow.html (Operaのロゴは404: Page not foundから) んー、(簡略…

スターをアイコンにして大きくするGreasemonkey Script

こんな感じになりますよ、と。(緑スターは1.5倍、赤スターは2.5倍、青スターは4倍) hatena big profile star for Greasemonkeyからどうぞ。 (どちらかといえばネタスクリプトです。常用するならreplace star iconをとりあえずカラー対応 - 0xFFのほうが良い…

replace star iconをとりあえずカラー対応

はてなカラースターというサービスが始まったそうです。 星にカラーバリエーションができたみたいなんですが、私ははてなスターはプロフィールアイコンに置き換えているので、全然区別がつきません。それでも別に困ることはなさそうですが、一応カラーがつい…

Google Chrome 2.0.170のGreasemonkeyとoAutoPagerizeについて

Google Chrome 2.0.170から、Greasemonkey(というか、UserScriptsって言うべきか)の実装が変わり、oAutoPagerizeが動かなくなっていたので修正しました。本体、SITEINFO(必要であればSettingsも)全て更新の必要があります。 oAutoPagerize - 0xFF 以下、中の…

Googleの検索結果からキーワードハイライトするGreasemonkey Script

先々週くらいからコツコツと書いていたキーワードハイライトするGreasemonkey Script(もしくは UserJavaScript)をリリースします。 word highlight for Greasemonkey今のところ、Opera9.5+(Operaで使う場合はファイル名をword_highlight.jsで保存してくださ…

大量に同じ画像を表示したいとき

画像周りの速度メモ - #生存戦略 、それは - subtechの件。最終手段として、CSSを使う。 .hatenastar{ display:inline-block; width:11px; height:10px; background:url('http://s.hatena.ne.jp/images/star.gif'); } (function(){ var now = new Date*1; fo…

富豪URI

URI - 素人がプログラミングを勉強していたブログ function URI(uri,base){ var a, _loc = location, self = this; if (base) {//via nanto_vi var XHTML_NS = "http://www.w3.org/1999/xhtml"; var XML_NS = "http://www.w3.org/XML/1998/namespace"; a = d…

Twitterはiframeに表示できない

ずっと放置していたまたOperaでニコニコ動画見てる - 0xFFを動くようにしようと思ったのだけど、どうしてもうまくいかなくて悩んでいたのですが、その原因が判明しました。 なんとTwitterは(クリックジャッキング対策のため?)フレームで呼び出された場合はbo…

期間限定、Google Chrome 2 の HiResTimeでベンチマーク

dev版のGoogle Chrome 2.0.166.1を弄っていたら、HiResTimeというグローバル関数を見つけました。perlとかでお馴染みの高精度のタイマー関数のようです。 さっそく試してみましたが、非常に高性能でお薦めです……と言いたいところなのですが、実はChromiumで…

inspect window(and Safari3と4の判定)

前回のをちょっと改良してwindowオブジェクトを解析してみた。 http://ss-o.net/test/window.htmlで、Safari3からSafari4betaで新たに増えたグローバルプロパティを調べてみた。 getSearchEngine postMessage setSearchEngine CSSVariablesDeclaration CSSVa…

inspect a

あまり知られていない気がしますが、HTMLのa要素はhref属性だけでなく(locationと同じ)hostやpathnameなどの属性を持っています(読み取り専用のようなものなので、属性を持つという言い方は不適切かもしれません)。 ただ、pathnameについて、例によってブラ…

OperaのpostMessageの実装(Opera10でLDR Full Feedを動くように)

OperaでLDR Full Feed - 0xFFがOperaで動かない件を調べてみたら、Opera10でpostMessageの実装が修正させていることに気がつきました。元々、OperaはHTML5のドラフト時の仕様に沿って document.postMesage を実装していました。その後 HTML5側ではwindow.pos…

CSSの:target擬似クラスによるクリックで開くフッター

予備知識として、target擬似クラスと、そのメニューへの応用についてはCSS 3のセレクタ解説::root、:not、:empty、:target - builderとCSS 3のセレクタ「:target」でタブメニューをつくる - builderが良記事だと思うのでそちらを。で、今回の場合はさらに応…

Twitter decode Tinyurlを自作API使用に変更

Twitter decode Tinyurl for Greasemonkeyを TinyurlなどのURLを復元するJSON(P) API - 0xFF を使用するように修正しました。自分でAPI書いて自分のグリモンで使えば、なんでもできそうな気がしますね。あとは時間とサーバーさえあれば……

Twitter Post Anywhere は特定の発言にReplyできるようになりました

ずいぶん前から、Twitter APIで「この発言に対するレス」が可能に - F.Ko-Jiの「一秒後は未来」なっていたのですが、今更ながら対応してみました。 http://userscripts.org/scripts/show/42146 ※Operaは9.50以上必須です最近RSSでTwitterのチェックすること…

TinyurlなどのURLを復元するJSON(P) API

最近Perlの勉強を始め、入門書を読んだりしてPerlのソースがそこそこ読めるようになってきました。 で、そろそろ実際に書いてみますかということで、以前からほしかったAPIに挑戦してみました。 reurl API Tinyurlなどで圧縮されたURLを復元*1してJSON(callb…

Greased LightboxをoAutoPagerizeに対応させる方法

以前からちょくちょく要望を見かけていたGreased Lightboxへの対応について。 できればoAutoPagerize側だけで、Greased Lightboxには手を入れずになんとかできないかと考えてはいたのですが、やはりどうにもなりませんでした… polog@81s - 1981sで書かれてい…

oAutoPagerize ver1.2.2

iframeでは起動しないオプションを追加(DISABLE_IFRAME)thx! oAutoPagerizeをiframe内ではオフにしてみた - by edvakf in hatena Operaで、Remove_blank.cssとの併用時に落ちることがある問題を修正thx! -o-link で落ちる原因を調べる - Grieverthx! oAutoPa…

Twitter用Greasemonkey修正とuserscripts.orgへアップ

遅くなりましたが、TwitterのHTML変更で動かなくなっていたScriptを修正しました。 修正が遅くなったのは、主にXREAのFTPに繋がらなくて……、仕方なくhetemlに移転し、結局はuserscripts.orgにあげました。こっちが見やすいかなos0x's scripts - Userscripts.…

ALBERTではたらくモバイルエンジニアのブログ

渋谷ではたらくベンチャーCTOのブログ 弊社エンジニアのブログです。宣伝宣伝。# ところでPSPに「ペルソナ」が移植されるらしいので、PSPを買わざるを得ない

1983パーリィ!だそうですよ

june29さん企画の1983パーリィ! : ATNDです。 ボクから見える範囲では1981と1986がとても盛り上がっていて,ちょうど間にいる1983はどうしたものかと. http://june29.jp/2009/01/18/1983party/ うんうん、私も身近な同級生にIT系に進んだ人がほとんどいな…

どう書くXPath:ここからここまで

XPathの不便なところ - ぶろぐ。@はてなより、http://labs.cybozu.co.jp/blog/akky/archives/2009/02/interviewd-by-junior-high.htmlの本文を取るXPathを考えてみた。とりあえず、2パターン。*1 id("center")/div/*[preceding-sibling::*[following-sibling…

ブラウザの体感的な速さにおけるJavaScriptの比重は大きくないので、CarakanでOperaが劇的に高速化されるかのような期待を抱くべきではない

Opera Core Concerns - Carakan 【速報】Opera新JavaScriptエンジンCarakan発表、50倍高速化も | エンタープライズ | マイナビニュース まー、もちろん劇的な違いを体感できるケースはあるだろうけど、少なくとも3Dとかハッシュとかの演算*1が速くなってもあ…

Googleの検索で日本語と非日本語の切り替え

Googleで非日本語圏の情報を求めて「ウェブ全体から検索」を選択するも、日本語圏の情報ばかり出てきてしまうことにストレスを感じている皆様へ。 「ウェブ全体から検索」がローカライズされている問題について、かなり良さそうな解決策を見つけたのでメモっ…

JavaScriptによるブラウザ判別の実際

1 行でブラウザ判別を行うスクリプト (IE 用の日本語紹介記事、Firefox、Safari 用の日本語紹介記事) を発端に、SpiderMonkey の判別とブラウザ判別: Days on the Moon や JavaScript でのブラウザ判別 - 「仕様の盲点」ではなく、「プロパティの有無」を使…

主要ブラウザで動くCSSを追加する関数

GM_addStyleの実装と最適化 - 0xFFに関連して、「IEでGM_addStyleみたいな関数ってどう書けばいいんだろ」とつぶやいたら、fubさんにcreateStyleSheetってのを教えてもらいました。で、調べてみたらcreateStyleSheetとcssTextで割と簡単に書けるみたいなので…

GM_addStyleの実装と最適化

GreasemonkeyのGM_addStyle関数は呼び出すたびにhead内にstyle要素を作る。 Greasemonkey 0.8.20080609.0のソースより。 function GM_addStyle(doc, css) { var head, style; head = doc.getElementsByTagName("head")[0]; if (!head) { return; } style = d…