タグ

ブックマーク / d.hatena.ne.jp/brazil (17)

  • Collection & Copy - Firefox 2.0、Storage(SQLite)、ポイント

    JavaScriptMDC - Storage これを読んで、僕が思ったポイント。 Firefox 2.0には、SQLiteが組み込まれている。同じくFirefox 2.0で導入された、クライアントサイドストレージ(sessionStorage/globalStorage)とは異なるもの。 (クライアントサイドストレージの中では、このSQLiteが利用されている。)基的にchrome URLや拡張からの利用を想定し、ウェブページからは利用できない。システムや拡張のデータファイルはプロファイル*1に、拡張子sqliteで保存されている。mozIStorageConnection#executeSimpleSQLは、値を返さない。 テーブルの作成や削除、データ追加などに利用する。セキュリティ的にもパフォーマンス的にもmozIStorageConnection#createStatementを

  • Collection & Copy - Deferred、遅延リソースのインターフェース、パターン

    JavaScript setTimeoutで実行される関数の中で発生するエラーは、セットした部分のtry/catchで補足することはできません。 function throwError(){ throw new Error('ERROR'); } try{ setTimeout(throwError, 3000); } catch(e){ // ここには到達しない alert(e); } MochiKit.Async.Deferredを使うと、エラーバックでエラーを補足できます。 callLater(3, throwError).addErrback(function(e){ alert(e); }); エラーの補足以外にも、Deferredのインターフェースから以下が行えます。 キャンセル(cancel)状態(fired)コールバックの追加(addCallback)エラーバックの追加

    ytesaki
    ytesaki 2007/01/05
  • Deferred、結果値の保存、非同期にインターフェースを合わせる - FAX

    JavaScript はじめてMochiKit.Async.DeferredのJSON取得のサンプルコードを見たとき、「いつ取得の処理が開始されるのか」、「なぜ、はじめにコールバックを渡さなくてよいのか」という疑問が起きました。ベルトコンベアで流れ作業を行うときに、作業者が並ぶ前に、材料を投入してラインを始動してしまっているような感覚です。そのサンプルコードは、以下のようなものです。 var deferred = loadJSONDoc('http://sample.com/data.json'); deferred.addCallback(function(data){ alert(data); // JSONデータが渡される }); MochiKit.Async.Deferredの最初のテストコードでは、ハンドラをセットして、コールバックして、その後に再度ハンドラをセットするテストが

    ytesaki
    ytesaki 2007/01/05
  • Collection & Copy - 画像 CSSを使った角丸

    画像 + CSSを使った角丸 技術 wg:Introducing DomCorners 上記ページを読んだ。 Nifty Corners 作者はCSSのみで角丸を実現する記事を書いている。当ブログでも、これを利用している。 その上で異なるアプローチの角丸を紹介している。 上のような画像を、1コマずつずらしながらCSSを利用して貼りこんで行く。 対象となる領域のHTMLは以下。 <div id="box"> <b class="btop"><b></b></b> content here... <b class="bbot"><b></b></b> </div> CSSの定義は以下。 b.btop, b.btop b, b.bbot, b.bbot b{ display: block;height: 10px;font-size: 1px; background-image:url(rc.

  • Collection & Copy - 図関連( 図や絵を描くJavaScriptライブラリ一覧)

    図関連 JavaScript 最終更新 2007/2/23 FooPlot: Online graphing calculator and plotter ezvg.js、VML/SVGを切り替えて使用、GPL。 Open-jACOB Draw2D wz_jsgraphics.js。 mxGraph Ajaxio Demo wz_jsgraphics.js、Prototype, script.aculo.us Cumulate Draw 独自ライブラリ。VML/SVG切り替え。Spry、Prototype.js。 ajaxSketch XUL。 CanvasPaint Sharpan - お手軽Webホワイトボード excanvas.js、Prototype.js。コラボレーション。 Thinkature wz_jsgraphics.js、YUI。コラボレーション。 WWW SQL Des

  • String#succ、MochiKit - FAX

    JavaScript (new Hatena).blog() - String#succ Ruby。 p (1..n).inject(s) {|x,| x.succ} JavaScript。 print(new Range(1, n).inject(s, function (x){ return x.succ() })); MochiKitで書くなら、どうなるか考えてみました。 // 次の文字コードの文字を返す function succ(c){ return String.fromCharCode(c.charCodeAt(0)+1); } ok(succ(succ(succ('a'))) == "d"); var s = 'a'; var n = 10; ok(reduce(succ, range(n), s) == "k"); 追記(‘ワ‘)<motemenの日記 - String#

  • ウェブ上のスライドショーのインターフェイス - FAX

    写真やプレゼンテーションのスライドショーは、画像自体をクリックすると次へ進めると絶対にいいと思う。目を離して、NEXTとかを探してクリックするのが大変。次へ、の位置がずれなきゃ、ポイントして動かさずにクリックしていきゃいいんだけど、たぶん、目線と注意の関係の問題。 ちょっと見づらい。 Sarah PickeringRails、そしてPHP 見やすい。 RHG 読書

  • Collection &amp; Copy - 上下左右中央の件、改善、補足

    Collection & Copy - 上下左右の中央にボックスを配置する id:inception9さんから、より簡単な方法をコメントで教えて頂きました!ありがとうございます。 これだ!これが正解だから、前回のが「バッドノウハウ(?)」なんですね。余分な空間用divもなくなり、ほんますっきりやわぁ。 ただ、どうも前回の元記事は「画面をコンテンツのボックスより小さくしても、ボックスの左上が欠けない」というところがポイントだったようです。たしかにウィンドウサイズを小さくすると、左上隅にボックスがきっちり収まります。ここにこだわらない場合は、短縮版がよさそうですね。 HTMLCSS、共に勉強不足ですので、直接指摘頂けるのは大変助かります。コメントを書く時間を頂けたことを、感謝しております。ではでは。 雑記軽い気持ちでHTML/CSSのことを書くと、なぜか反響が大きく、戸惑う。なんとなくプロ

  • Rhino in Spring、継続 - FAX

    Rhino in Spring、継続 RHINO, JavaScript Rhino in Spring DI + JavaScriptで、反射的に見送ってしまいそうでした。 (サーバーサイドJavaScriptで、DIが出てくるものは、JavaScript/スクリプトの性質を質的に誤解しているんだと思います。のっけから脱線になりますが、Seasar(DIコンテナ)を使ってたときに最終的にメリットとして感じたのはAOPだけで、これはプロトタイプベースのアプリケーションではパターンの一つに過ぎないと思っています。) こんな毎日・・・ - RhinoinSpringのExample 私も、上記サンプルを簡略化し試してみました。 送信された値を、累積的に加算していくアプリケーションです。 こんな画面です。 コントローラーは、こんな感じです。 var tape = [0]; // 履歴 for(

  • ブックマーク抜粋 2006/05/21 - FAX

    ブックマーク抜粋 2006/05/21 リンク なるべく、どこで情報を知ったのかを書いとこう思うのですが(オープンソース)、たまに忘れちゃうことがあります。 ごめんなさい。 大きいカンファレンス2つ、JavaOneとAjax Experienceがあったから、先週と今週はいろいろあったなぁ。 Fancy Pants Adventure (via dotimpact::BCC) 横スクロール、ジャンプ、踏み潰し、壁キック、そんなゲーム。 スーパーマリオ + ソニック・ザ・ヘジホッグ + メトロイド、みたい。 動きも音もいい。 Bugmenot.com ログイン情報、アカウント/ユーザー名、パスワードの共有...、というか...。 これ、なんか、すごい便利な時がありました。この時とか。 TechCrunch >> AllofMP3 Down - For Good? ALLOFMP3ロシア、M

  • iPod、バッテリー交換 - FAX

    TIPS iPodバッテリー - Sonnet iPod用交換バッテリー iPodのバッテリーを交換してみました。私が持っているのは第3世代iPodというやつで、クリック感のないタッチホイール形式の表面で、ボタンが光るタイプのモデルです。カタログスペックでは8時間連続再生が行なえるようなんですが、3〜4年経っているためか2時間半程度しかもたなくなっていました。そして交換後は、ちゃんと9時間連続再生が行なえるようになりました(カタログでは10時間以上もちそうに書かれていましたが...、まぁ、いいです)。以下記事が、参考になると思います。 Sonnet、iPod/iPod mini対応交換バッテリキット ポイントは記事にもあるように4隅です。ここを一つ一つぽきぽき外していくような作業で、サイドの部分は重要でないように感じました。始めの角を外すのは相当な力と思い切りが要り、「俺には、無理なのでは

  • Behaviour関連、セレクタ - FAX

    JavaScript我的春秋: 続 JavaScript ソースが HTML から消える日メジャーなものがまとめられています。上記を見て、 Javascript Behaviors最後にsがついた改造版。 Faster DOM Queries/moz-behaviors/Dean Edwardsさんのサイトは、面白いことがたくさんあります。 CSS event:SelectorsgetElementsBy*() function indexgetElementsBy、まとめ。 詳しく把握してないですが、それぞれ速度に違いがあって、メモリリークがあるやつもあったと思います。

  • Collection & Copy - WSH、外部スクリプトをロードする

    JavaScriptWSHで、Rhinoのloadに類似するような外部スクリプトをロードする方法を探したが、見つからなかったので書いた。より簡便な方法があるような気もする。 load("http://www.mochikit.com/MochiKit/Base.js"); load("lib/MochiKit/Iter.js"); function load(src){ eval(getText(src)) } function getText(url){ url = url.indexOf(":") != -1 ? url : "file:///" + WScript.CreateObject("Scripting.FileSystemObject").GetAbsolutePathName(url).replace(/\\/g,"/"); var xhr = new ActiveX

    ytesaki
    ytesaki 2006/06/05
    なんか、セキュリティ的にどうなんだろうね?
  • Collection & Copy - 上下左右の中央にボックスを配置する

    (via Subtech Watchlist - typester) Collection & Copy - 上下左右中央の件、改善、補足コメント頂き、改善、補足を書きました。 CSS vertical center using float and clear 上記、CSSで上下左右の中央にボックスを配置するページを読みました。要約すると以下のHTMLになるようです(必要なものも削っちゃったかも)。ポイントとなるスタイルシート設定にコメントを入れました。 CSS、きっと分かってる人には、あったりまえなんだろうなぁ。「float:left」と「clear:left」がペアで対応してるんですね。あと、marginのautoはIEで、うまく動かないのか。余白用のブロック(distance)は、まず画面の縦半分の長さで空間を確保し、文のブロックの半分のサイズだけマージンを減らして、ちょうどよい

  • Collection & Copy - JSON入門

    翻訳(thanks to JavaScript++かも日記) 原文:Introducing JSON JSON(JavaScript Object Notation)は、軽量のデータ交換フォーマットです。人間にとって読み書きが容易で、マシンにとっても簡単にパースや生成を行なえる形式です。JavaScriptプログラミング言語(ECMA-262標準第3版 1999年12月)の一部をベースに作られています。JSONは完全に言語から独立したテキスト形式ですが、C、C++、C#、JavaJavaScriptPerlPython、その他多くのCファミリーの言語を使用するプログラマにとっては、馴染み深い規約が使われています。これらの性質が、JSONを理想的なデータ交換言語にしています。 JSONは2つの構造を基にしています。 名前/値のペアの集まり。様々な言語で、これはオブジェクト、レコード、構

  • 関数、オブジェクト、クロージャ - FAX

    (thanks to id:koyachi、del.icio.us/rtk2106) OOPとFPと。関数、オブジェクト、クロージャの使い分けについて考えます。 関数型が良いのか、オブジェクト指向が良いのか、知りたいと思っていました。色々なページを読み、現時点で一応の答えを得ました。 カウンタを例にして、関数、スコープ、オブジェクト、クロージャの順に見て行きます。関数関数は処理です。入力と出力があります。関数型プログラミングでは、関数同士の入力と出力を連結しプログラムが構成されます。 var current = 0; function next(v){ return v + 1 } function previous(v){ return v - 1 } ok( 1 == ( current = next(current) ) ); ok( 2 == ( current = next(cu

  • メモ、翻訳、Mochikit - FAX

    メモ、翻訳、Mochikit メモ うーん、大変なスランプで困りんこ。 「繰り返し」の翻訳は、現在無許可なんですが、ざっくりで翻訳してみました。 正確には違うけど大意はあっている(ところが多い)と思います。 今まで集めた色々な要素が散らかってしまって、どっから手をつけて良いのかわからなくなり、とりあえずあそこからやりました。 「今後ポストが続く予感」は正解す。 話は全く関係ないですが、翻訳は沢山やっても、英語が読めるようになりません(私の場合は)。 「翻訳しないと読めない」ようになるだけのような気がします。がっかり。 もちろんちょっとは良いんですが。 「Iteration in JavaScript」のコメント欄には、『JavaScript』のDavid Flanaganさんが「Mochikitいいね。でも例外って、例外的な時だけ使うべきじゃない?」なんてコメントもあって、Bobさんが切り

  • 1