はてなには、どんな引力があるんだろう。 2008-02-18 - Web技術系クリップ 上記経由で知ったニュース。 http://d.hatena.ne.jp/mala/about ↑ この時点ではジョークだと思いました。 最速インターフェース研究会 :: そろそろはてな京都移転について一言いっておくか ↑ 本当みたいです。今日付けなんですね
まだまだバグとか色々残ってるかとは思いますが、リリースされました。 http://fastladder.org/ http://blog.livedoor.jp/staff_reader/archives/51181618.html ニュース記事 http://www.itmedia.co.jp/news/articles/0802/07/news032.html http://internet.watch.impress.co.jp/cda/news/2008/02/07/18390.html http://itpro.nikkeibp.co.jp/article/NEWS/20080207/293305/ 元々Railsで動いてたわけではなくて、個人でもインストールしやすいようにコンパクトに書き直したものです。 稼働してるサービスは、他のライブドアのサービスと同様に(良く知られている通
http://blog.livedoor.jp/dankogai/archives/50957890.html まず、Object.prototypeにメソッドを生やしてしまうとfor inでキーを列挙するときにいちいちhasOwnPropertyを使わないといけなくなるので普通は使いません。影響が大きすぎるので、よっぽど変態的なライブラリじゃないと使わない。他のライブラリと組み合わせるとほぼ確実に問題が起きる。それから、deep_cloneが欲しい場合はJSONを作ってevalすればよい。パフォーマンスを気にする場合とか、浅いコピーが必要な場合はそれなりに工夫する必要があるけど。 で、JSONにするのにFirefoxだとtoSourceというのが使える。unevalというラッパーがあって、これだとnullでも平気。 http://subtech.g.hatena.ne.jp/cho45/
プログラミングできるひとは「ゲーム作れよ」と言われることが多いような気がする。 ぶっちゃけゲームとか作れないし、たぶんウェブプログラマの多くはそうだ。 PerlやRubyやJavaScriptとかで何万ポリゴン動かしたりできない。 XMLをパースしたり、正規表現で置換したり、そういうのなら得意だ。 ゲームの人らは秒間3億ポリゴンとかやってるのに、何でこんなちまちましたことやってるんだろうと思ったりもする。 なんでこんな事やってるのかというと、面白いからやってるのだけれど、 プログラム書かない人らから見ると何やってるのか全然面白さが分からない、 3Dポリゴンが動いたり(乳が揺れたり)する方が面白いに決まってると思ってる。 彼らは失礼極まりなくて、リーナストーバルズに対しても 「お前の作ってるものは良く分からないから、ゲーム作れよ」って言うだろうね。 そういう連中を皆殺しにしないことには俺の人
現在見ているページをGM_xmlhttpRequestで受信するため、amebloのPVが増えます。さすがYappoです。 http://subtech.g.hatena.ne.jp/yappo/20070319/1174293065 なのでちょっと書き直してみました。 http://la.ma.la/misc/userjs/ameblo_sucks.user.js イベントはremoveEventListenerで外したいところですが、元の関数が参照できないと無効化できないので、onclickやoncontextmenuに直接代入してます。GreasemonkeyではDOMへの参照はラッピングされたオブジェクトが帰ってくるのでunsafeWindow経由で操作を行う必要があります。 Greasemonkey以外のuserjs実装でも動くように書いてみたつもりです。 どうぞご利用ください。
KeepAliveのせいというと誤解があるか。IEのせいなんだけど。 どうもここらへんの問題っぽい。 http://d.hatena.ne.jp/kinneko/20051214/p4 http://otaba.seesaa.net/article/10637205.html 2月初めぐらいからか、キャッシュが空の状態で日本語版のWikipediaを表示すると、IE6が1分間ほど固まる、という不具合があるそうだ。 JavaScriptを切ると正常に表示できるようになるけど、JavaScriptが重い、ということはなかった。JavaScriptが重いならCPUの使用率が高くなるはずだし、なんかおかしいフリーズの仕方をする。で、Proxomitronでレスポンスとか調べてみてたりしたのだけれど、プロキシ経由だと問題なく表示される。 結論としては、なんらかの原因でkeepaliveがタイムアウト
思うところあって作ってみた。カーソルキーだけで読めます。IME有効無効に関わらず使えます。 http://la.ma.la/misc/userjs/ldrkeybindforldr.user.js フィード一覧フォーカス時 ↑ : 前のフィードを選択 ↓ : 次のフィードを選択 → : 開く 記事画面フォーカス時 ↑ : 前の記事に移動 / 前のフィードに移動 ↓ : 次の記事に移動 / 次のフィードに移動 → : ピンを付ける / 外す ← : フィード一覧にフォーカスを移す
特定のscript中に含まれるdocument.writeを上書きして、遅延描画にすることができます。 document.writeを使う広告配信スクリプトや、ブログパーツなどの挙動を置き換えることが出来ます。 外部サーバーから読み込むスクリプトをページ最後部に記述することでページレンダリングを妨げなくなります。 このページはこんな感じになってます。 var adsense_url = 'http://pagead2.googlesyndication.com/pagead/show_ads.js'; document.lazy_writer(adsense_url, function(str){ var id = "adsense_" + this.script_count; document.getElementById(id).innerHTML = str; }, {delay :
Firefox2でGoogle Reader をRSS reader として追加する方法 参考: 最速インターフェース研究会 :: Firefox2.0に任意のRSSリーダーを追加する方法 Adding feed readers to Firefox - MDC bookmarkletから追加するという手もあるのだけれど、それだと複数のfeedを提供しているペ
何かくっつける系のGreasemonkeyが作りやすくなってます。 エントリごとに表示投稿日時が出てる箇所に追加されます。 window.entry_widgets.add("name", generator , "description"); generatorはfunction(feed,item){ ... }のように無名関数で記述できます。feedはフィードに関する情報、itemはその記事のリンクや記事本文が取れます。データ構造はまるごとPerlに書いてあります。 descriptionは省略可能ですが、将来的に何か気の利いたUIでも作ろうかと考えていたりするので入れておくと良いかも知れません。今のところtitle属性に使うようになってます。Greasemonkeyだと日本語が通らないのでエスケープする必要があります。 エントリにくっつけるサンプルエントリごとにlivedoorクリ
フォームポストでテンプレートを送りつけると、それを使ってページを表示してくれるSledge::Plugin::DebugTemplateというのを作った。これによりJavaScriptやCSSのみならず、HTMLテンプレートすらローカルファイルと差し替えて開発ができるようになった。 ソース(nopasteが24時間で消えるの知らんかった) http://rafb.net/paste/results/Ohpek040.html http://la.ma.la/misc/src/DebugTemplate.pm Winkで作ったデモ http://la.ma.la/misc/demo/debug_template.htm ブラウザを制御してページの内容をダミーのフォームに置き換えて現在のバッファの内容をペーストしてフォームポストしています。どちらかというとこっちの方が肝で、このデモは萌ディタと
MozLabという拡張を昨日知ったのですが http://dev.hyperstruct.net/trac/mozlab この中に含まれているMozReplというのがヤバい。Firefoxにtelnet接続できるようになる。 とりあえずRubyで書いた簡単なサンプル、今見ているページをリロードするだけ。 require 'net/telnet' telnet = Net::Telnet.new({ "Host" => "localhost", "Port" => 4242 }){|c| print c} telnet.puts("content.location.reload(true)") telnet.close ひたすら自分が見ているURLとページタイトルを記録する系とか簡単に作れそう。 今見ているページのURLとタイトルを取得するサンプル。 require 'net/telnet'
JavaScriptにおいて関数というのはFunctionオブジェクトで、他のビルトインオブジェクトと同様に、組み込みのメソッドがある。これがapplyとcallしかないのだけれど、こんな感じに使う。 func.apply(thisObj,arguments) func.call(thisObj,arg1,arg2,arg3) thisObjには、その関数内で「this」として使うオブジェクトを指定する。applyの第二引数はargumentsオブジェクトを指定する。配列か、現在実行中の関数のargumentsオブジェクトを丸ごと別の関数に引き渡せる。つまり引数の長さが良くわかってなくても使える。 callは代わりに func.apply(thisObj,[arg1,arg2,arg3]) と書けるので、実はいらないんじゃないかと思う。 これらは多分、ふつうにJavaScriptを書く上で
かなりターゲットの狭いTips。役に立たない。 prototype.jsというRuby on Railsなんかのフレームワークで使われている有名なJavaScriptのライブラリがあって、これが色々と使えそうな処理を綺麗に詰め込んであり、デファクトスタンダート的な地位を確立しているのだけれど、ちょっと微妙だなーと思うところがあって、それはObject.prototypeを拡張してしまう点。 実際の弊害はこういう。 http://d.hatena.ne.jp/nazoking/20050425/1114374966 要は連想配列として使うときに困るって話。 多分prototype.jsはJavaScriptの側でロジックを組むことをあまり想定していないため、この辺の問題にあんまり配慮していないのではないかと思うのだけれど、とりあえず無理やり回避する方法を思いついたので書いてみる。 http:
について。 http://nanto.asablo.jp/blog/2005/09/04/62939 http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:Array#Methods ループ処理を便利にするメソッド Array#forEach Array#map Array#filter Array#every Array#some 引数として、callback,thisObjを受け取る。配列の各要素に対してcallback関数を実行する。 callback関数はelement, index, arrayを受け取る。value,key,self。値、添え字、配列自身。 Array#forEach 配列の各要素に対してcallback関数を実行する Array#map callbac
今も昔も大変よく使われている古典的JavaScriptの一つjavascript:history.back()なんですが、実際に戻る操作が成功したのかどうかを判別することができません。タブブラウザなんかを使っててミドルクリックで新規タブで開いてたりすると、history.backをクリックしても無反応で何も起こらない、なんてことよくありませんか? そんなわけなのでhistory.backを実行後にページ移動が発生しているかどうかを監視して、戻るに失敗したときに特定の処理を発生させることができるような関数を作ってみました。 function try_back(errback){ var bs = false; Event.observe(window,"unload",function(){bs=true}); Event.observe(window,"beforeunload",func
<h2><a href="http://clip.livedoor.com/clips/[[livedoor_id]]">[[ livedoor_id ]]</a></h2> <ul>[[#{ clips.map(Template.get("tmpl_list").compile()).join("") }]]</ul> <li><a href="[[link]]">[[title]]</a> <br><small><a href="http://clip.livedoor.com/page/[[link]]">[[public_clip_count]]user</a> | [[#{ tmp=now-created_on, ((tmp<7200)?'<span class="recent">':"")+(tmp).toRelativeDate()+((tmp<3600)?'</span>'
Web プログラマの方にアンケートです。現在仕事で使っている言語と、一番好きな言語を教えてください http://q.hatena.ne.jp/1155781580 という質問があったので、さくっとGreasemonkeyでビジュアライズするスクリプトを書いてみた。 http://la.ma.la/misc/userjs/hateqvisualcell.user.js 横軸に好きな言語で集計 python好きの人はpythonで仕事してるみたいです。 横軸に仕事で使ってる言語で集計 おおむね仕事で使ってる言語が好きみたいですが、JavaScript使いはPHPが好きみたいです。 使ってる言語の方は複数回答なので、PHPプログラマがついでにJavaScriptを書かされてるんじゃないかと予想。 沖縄ではPHPしか使われてないとか、C#使いはC#が好き(一名)とか、母数が少ないのでよくわかりま
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く