タグ

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

  • eHub インタビューズ - SWiK - FAX

    hamasta
    hamasta 2007/06/05
    SWiKについて
  • jsh - FAX

    JavaScript, jshjsh ブックマークレット版は以下。 javascript:(function(){var BASE='http://www.asahi-net.or.jp/~xe4r-kmt/jsh/';with(window.open('','_blank','width='+screen.width*.6+',left='+screen.width*.35+',height='+screen.height*.9+',resizable,scrollbars=yes')){document.write('jsh');document.close();}})() 名前、いろいろ考えたけど、jshになりました。 画面はLDRで購読リストを調査しているもの。各機能については、これから少しずつポストします。 補完候補のタイプ表示も追加して、非列挙プロパティの補完も対応し、一段落。

    hamasta
    hamasta 2007/02/19
    jsh shell
  • 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)エラーバックの追加

  • Collection & Copy - 『海馬』、モチベーション、作業興奮

    抜粋池谷 「やる気」を生み出す脳の場所があるんですよ。側坐核と言いまして、脳のほぼ真ん中に左右ひとつずつある。側坐核の神経細胞はやっかいなことに、なかなか活動してくれないのです。どうすれば活動をはじめるかというと、ある程度の刺激が来た時だけです。つまり、「刺激が与えられるとさらに活動してくれる」ということでして……やる気がない場合でもやりはじめるしかない、ということなんですね。そのかわり、一度はじめると、やっているうちに側坐核が自己興奮してきて、集中力が高まって気分が乗ってくる。だから「やる気がないなぁと思っても、実際にやりはじめてみるしかない」のです。 糸井 やりはじめる前に、やる気がないのは当然なのですか? 池谷 はい。やってないから、やる気が出なくて当たり前です……この現象はクレペリンという心理学者が発見して「作業興奮」と呼ばれています。作業しているうちに脳が興奮してきて、作業に見合

    hamasta
    hamasta 2006/09/27
    やり始めないとやる気は出ない
  • 2006-09-03 - FAX

    Flash、dataスキーム、読み込み失敗 JavaScript 暴満館 >> Code Snippetsを見やすくするGreasemonkeyスクリプト 上記のとおり、Flash/SWFファイルをdataスキームから読み込もうとしたが失敗。 最速インターフェース研究会 :: Firefoxでテキストをクリップボードにコピーする方法 上記の「実験1」をローカルに保存して動かない。 エラーは発生せず、何も起きないかんじ。 自分で作成しているFlashProxyでも同じ。 ActionScriptの先頭にも来ていないので、Systemオブジェクト(setClipboard)だけセキュリティが厳しいわけではないと思う。 allowScriptAccessがalwaysでも、だめ。 Flash Player 9をアンインストールし、8にすると正常に動く。 もちろん、dataスキームを使わずにファイ

  • テンプレート関連 - FAX

    テンプレート関連 JavaScript 最終更新 2008/9/23 日野望の会−Yabooo.org » JavascriptHTML::Template | Matthias Georgi - Patroon - a Javascript Template Engine google-jstemplate - Google Code Ajaxian » Django Template Language in JavaScript EJS - Embedded JavaScript at Edward Benson JsonML (JSON Markup Language) IT戦記 - JsonML を使う高速テンプレートエンジン「JsonML.Template」 JSLT javascript-based XSLT alternative ZParse - Advanced J

  • JavaScript用Flashプロキシ、Javascript Sound Kit - FAX

    JavaScriptFlashProxy 学習のためJavascript Sound Kitを読み、より汎用的に使えるプロキシを切り出してみました。addListnerの部分や、ディスパッチの部分など、とても面白かったです。(時間があれば、図を書きたいんだけど...)作者のGustavo Ribeiro Amigoさん、ありがとう、ごちそうさま! ActionScript内でのevalや、プロパティ列挙、new Functionなどが十分に行えなかったため、ターゲットのプロパティを自分で初めに列挙する必要があります。thisまわりや、スコープの扱いも、MTASCはちょっと変でクセがあります。 コンセプトコードに近く、ActionScriptについての知識が皆無なため、見落としだらけだと思います。MP3の再生だけなら、Javascript Sound Kitで十分です。なにかの参考になれば。

  • Collection & Copy - MochiKit - スタイルガイド

    MochiKit - スタイルガイド 翻訳 原文:StyleGuide - MochiKit - Trac MochiKitのコーディング規約の大部分はPythonのPEP8とPEP 7(この順に優先される)に従っている。しかし、JavaScript特有の点もいくつかある : ビルトイン・オブジェクト、およびそのプロトタイプを絶対に変更しない。(例えば、このようなことは行わない: Object.prototype.foo = REALLY_BAD! ) 代わりに関数の使用を志向する。 関数のようにtypeof演算子を使用する : typeof x ではなく typeof(x) コンストラクタを使用するときには引数を括弧に入れる : new Error, foo ではなく new wError("foo") 常に完全修飾子で他の関数を呼び出す。また利便性のための記号的なエイリアスも用いない

  • Collection & Copy - 月の日数を求める

    JavaScriptきしださん(id:nowokay)コメント、ストライクです。これだ、これだよー。0で前月の最終日だよ。 new Date(year, month+1, 0).getDate(); (found at Determining the Number of Days in a Month with Javascript) function daysInMonth(month, year){ return 32 - new Date(year, month, 32).getDate(); } これおしゃれやわぁ。日付をロールオーバーさせて基礎値から引くかんじ。日数の最大値より多ければ、32でも40でもいいんだな。 私が考えたのは、月初の前日の日を調べるやつで、Dateオブジェクトが無駄でした。 function getLastDateOfMonth(year, month

  • 3つの数の最大値を返す - FAX

    JavaScriptnanto_viさんに以下でいけるとコメント頂きました。 Math.max(red, green, blue) うっ、これです。もう胸が痛い...。イディオムとかじゃなくて、単なる関数の使い方のレベルです。もーMochiKitのやつめー(やつあたり)。 15.8 Math オブジェクト (The Math Object) (found at Mochikit.Color) Math.max(Math.max(red, green), blue);

    hamasta
    hamasta 2006/06/08
    Math.max( a,b,c )
  • ブックマークレットの文字数制限、IE 7 beta 2 - FAX

    JavaScriptRules for Bookmarklets ブラウザ最大文字数Netscape> 2000Firefox> 2000Opera> 2000IE 42084IE 52084IE 6508IE 6 SP 2488IE 7 beta 22084 戻ってる。

    hamasta
    hamasta 2006/05/24
  • Collection & Copy - 上下左右中央の件、改善、補足

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

    hamasta
    hamasta 2006/05/22
    ボックスを画面中央に配置
  • 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)は、まず画面の縦半分の長さで空間を確保し、文のブロックの半分のサイズだけマージンを減らして、ちょうどよい

    hamasta
    hamasta 2006/05/20
  • Collection & Copy - HTMLを生成する

    JavaScript毎日、調べ物をして、コードを書いて、ルービックキューブやってます。サーバー側とクライアント側のHTML部分、またですが、コンセプトコードを書いてみました。HTMLを、こんな感じ、html(body({bgcolor:'gray'}))、に書きます。関数が要素、オブジェクトが属性、配列でこれらのまとまりも表せる、というMochiKit類似のラインで考えています。 ファイルの上半分はこんな感じです。HtmlBuilder.tagに、h4やbrなどのHTML生成関数をくっつけてます。 使うコードはこんな感じです。isと、okはテスト関数です。 withを使って、沢山あるHTML関数を、グローバルに落とさないようにしてます(遅くなるかな...?)。update(this, HtmlBuilder.tag)で、状況によってはグローバルに下ろしちゃうと速くなると思います。 Moch

  • 関数、オブジェクト、クロージャ - 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

  • 配列の先頭の要素を取得する - FAX

    配列の先頭の要素を取得する 練習 var a = []; a[15] = 150; a[20] = 200; ok( void(0) === a[0]); ok( void(0) === a.slice(0,1)[0] ); ok( void(0) === a.shift() ); ok( car(a) == 150 ); function car(a){ for(var i in a) return a[i]; } Permalink | コメント(0) | トラックバック(0) | 08:20

  • Collection & Copy - ドキュメントのロード完了に合わせて関数を実行する

    JavaScriptページロード時にプログラムを実行するためにwindow.onloadやbody.onloadがしばしば使われる。しかし、ページ内に大きな画像が存在する場合などは、画像のロードを待つため、実行が遅れてしまう。「ドキュメントのロードが終わっていて、かつ、イメージのロードが完了する前」に関数を実行する方法のリンク2つの要点をコピー。 script要素defer、DOMContentLoadedイベントを利用する方法The window.onload Problem - Solved! Firefoxの場合非公式のイベントハンドラ、DOMContentLoadedを利用する。 // for Mozilla browsersif (document.addEventListener) { document.addEventListener("DOMContentLoaded",

  • はてなの複数アカウントを切り替えるブックマークレット - FAX

    練習以下は、クッキーの削除とログインを行い複数のアカウントを切り替えるブックマークレットです。配列に格納されたユーザIDを順番に循環しながらアカウントを変更していきます。はてなのサイト内なら任意の場所で実行できます。 javascript:(function(){var p="pass",us=["id1","id2"],ui=0,e=new Date,h="hatena.ne.jp",d=";domain="+h+";path=/";with(document){try{ui=++(cookie.match(/ll=(\d+)/)[1])%us.length;}catch(ex){}e.setMonth( (e.getMonth()+1)%(12));cookie="ll="+ui+d+";expires="+e.toGMTString();cookie="rk="+d;location

  • キャピタライズ(単語の先頭の大文字化)を行う - FAX

    JavaScript(found at Code Snippets: Capitalize) function capitalize(str){ return str.replace(/\w+/g, function(word){ return word.charAt(0).toUpperCase() + word.substr(1).toLowerCase(); }); } ok(capitalize("aBC dEf GHI") == "Abc Def Ghi"); replaceの第2引数に、関数を入れられることを学んだ。『JavaScriptビジュアル・リファレンス (Web Designer’s Handbook Series)』(これについては書きたいことがありますよ)でも、『JavaScript』でも触れられていなかった。追記ECMA-262 3rd Edition - 1

    hamasta
    hamasta 2005/12/18
  • 1分でわかるJSAN - FAX

    1分でわかるJSAN 技術 概要 JSANは、他のライブラリをインポートするライブラリです。 リポジトリ リポジトリは、ライブラリの検索対象のパスです。 JSAN.addRepository()で追加します。 JSAN.includePathにリストされます。 デフォルトのリポジトリは「.」と「lib」です。 JSAN.use() ライブラリをインポートするには、JSAN.use()を使います。 クラスがロードされます。 個々の関数もグローバルコンテキストへロードされます。 JSAN.require() クラスのみをロードします。 「Test.Simple.plan()」のように、全部書けば呼び出せます。 グローバルコンテキストを汚しません。 JSAN.exporter() ロード済みのクラスから、好きな関数をグローバルへ置き直します。 関数が使いやすくなります。 好きなライブラリの、好き