タグ

ブックマーク / monjudoh.hatenablog.com (13)

  • RequireJS moduleについて - monjudoh’s diary

    RequireJSって何? 公式サイト RequireJS スライド jQueryRequireJS.pdf語記事だとこの辺? http://zudolab.net/blog/?p=451 要はJavaScriptの依存性解決をしてくれるライブラリで、こんな感じで使えます。 require( [ 'lib/a' ,'lib/b' ,'lib/c' ], function(){ // lib/a.js,lib/b.js,lib/c.jsが読み込まれていることが保証されているcallback require( [ 'lib/d' // lib/a.jsに依存しているライブラリ ,'lib/f'// lib/b.jsに依存しているライブラリ ], function(){ // lib/a.js,lib/b.js,lib/c.js,lib/d.js,lib/e.jsが読み込まれていることが保

    RequireJS moduleについて - monjudoh’s diary
    yuiseki
    yuiseki 2013/07/25
  • JavaScriptでの非同期関数合成 - monjudoh’s diary

    Unserscore.jsや互換ライブラリのLo-Dashを使うと関数合成が出来ます。 複数個の関数があって、関数を呼び出した結果を使って関数を呼び出して…っていうのを1個の関数にします。 ドキュメントの例を見れば分かるかと。 簡略化のために関数合成の対象になる関数を1引数・戻り値ありの関数とします。 これを非同期処理をする関数に当てはめるとcallbackを含む2引数・戻り値なしの関数が当てはまるでしょう。 この場合のcallbackは1引数の関数とします。 まず、logを出力するcallback関数を定義しましょう。 function log(result){ console.log(result); } 次にcallbackを含む2引数・戻り値なしの関数を定義します。別に非同期処理はやっていないです。 // 1を足す function add1(callback,arg){ call

    JavaScriptでの非同期関数合成 - monjudoh’s diary
  • 疎結合なUIコンポーネントの作成について - monjudoh’s diary

    複数画面で使えるAjax formダイアログのコンポーネントを作る 初期状態 Google CalendarのようなWebアプリを想像してください。 1日が1個のセルになっていて、セルをクリックしたらスケジュール登録ダイアログが表示され、 入力して登録ボタンを押すとスケジュールが登録され、セルの中に登録されたスケジュールが表示されます。 イメージ define([ 'schedule-model' ,'schedule-api' ,'schedule-to-selectors' ,'growl' ,'app/schedule-dialog-template' ,'debug' ,'jqueryui/dialog' ],function( ScheduleModel ,ScheduleApi ,scheduleToSelectors ,growl ,scheduleDialogTemplat

    疎結合なUIコンポーネントの作成について - monjudoh’s diary
  • jQuery UI Dialogを使う Google AJAX Libraries API編(jQuery UI 1.5.2) - monjudoh’s diary

    jQueryだけでなくjQueryUIGoogle AJAX Libraries APIで取ってこれるようですので、その使い方をば。 Google AJAX Libraries APIで取ってくるjQueryUIは、 UI Core・Core Interaction・Widgets・Effects全部入りです。 なので、当然前回言及したDialog・Draggable・Resizableも全部入っています。 とりあえずファイルを直で指定してみる。 <html> <head> <link rel="stylesheet" href="./flora/flora.all.css" type="text/css"> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jque

    jQuery UI Dialogを使う Google AJAX Libraries API編(jQuery UI 1.5.2) - monjudoh’s diary
    yuiseki
    yuiseki 2009/12/01
  • jQuery1.3.2コードリーディング(liveメソッド) - monjudoh’s diary

    若手ITゾンビにオンラインで参加した。 liveメソッドについては.live() | jQuery API Documentationを参照 liveでeventを貼って、実際にeventが発火した場合、 以下のliveHandlerが呼ばれる。 l2989-3012 function liveHandler( event ){ var check = RegExp("(^|\\.)" + event.type + "(\\.|$)"), stop = true, elems = []; jQuery.each(jQuery.data(this, "events").live || [], function(i, fn){ if ( check.test(fn.type) ) { var elem = jQuery(event.target).closest(fn.data)[0]; if

    jQuery1.3.2コードリーディング(liveメソッド) - monjudoh’s diary
    yuiseki
    yuiseki 2009/11/30
  • FireQuery - jQueryを扱う際に便利なFirebug拡張 - - monjudoh’s diary

    FireQuery is a Firebug extension for jQuery development jQueryを扱う際に便利なFirebug拡張 現在のバージョンは0.3 結構前に紹介されていたけど、ちゃんと使いこなせてきた感じなので紹介する。 以下、各機能について紹介と解説。 jQueryオブジェクトのconsoleへの表示 jQueryオブジェクトをFirebugのconsoleへの出力 1.2系の場合通常のオブジェクトとして表示されてしまいどの要素を抱えているかぱっと見て把握出来ない、 1.3系の場合は通常の配列と同じように表示される。 jquery12.fn.jquery;// 1.2.6 jquery12('div');// Object length=6 0=div#main 1=div#outer1.outer jquery13.fn.jquery;// 1.3

    FireQuery - jQueryを扱う際に便利なFirebug拡張 - - monjudoh’s diary
    yuiseki
    yuiseki 2009/07/15
  • pixivのイラストをブックマークするのをブックマーク追加画面に遷移せずに行いたい - monjudoh’s diary

    やりたい事 イラスト表示画面からブクマ タイトル・キャプション・登録タグからグループを自動追加 過不足分を手動で削除・追加 一通りパーツがそろったらグリモン化したい。 jQueryを使うとする。 イラスト表示画面でjQueryを使うにあたっての注意点 なぜか$(/*何がし*/)でindex:0に全件分のa要素が入ったjQueryオブジェクトが返ってくる件調査(jQuery AOPを使ってみた。) - 文殊堂で調べたが、 script.aculo.usとjQuery1.2.6のバッティング問題があり、 jQueryによる要素の取得が正しく行えないので、 jQuery体が修正されるまではjQuery.makeArrayに以下のようにパッチを当ててやらないといけない。 jQuery.makeArray=function( array ) { var ret = []; if( array !=

    pixivのイラストをブックマークするのをブックマーク追加画面に遷移せずに行いたい - monjudoh’s diary
    yuiseki
    yuiseki 2008/10/26
  • オープンソースカンファレンス2008 Tokyo/Fall 勉強会大集合 LT - monjudoh’s diary

    気になった所だけかいつまんでメモ わんくま同盟 目標とする集客を決める スピーカーの確保 1回目は必ず話してくれる人 2回目以降は参加者の中から募る 募集 blogとか システマチックじゃない 応募ページを作る環境があるなら作る。 スタッフになってくれる人等は会場30分前までに集合 懇親会では主催者が喋ってない人や初参加の人と積極的に話をする Ruby札幌 同じ場所で開催する事で準備コストを減らす java-ja 管理しない 公開する 気軽に参加できるのが大事 1000 Speakers 無償にこだわる 学生でも参加しやすい 交流重視 参加しただけで終わりにしないようにしたい ネット重視 ustとか Rails勉強会@東京 Railsに限らない Ruby自体 Git Smalltalk 場を提供したい 東京エリアDebian勉強会 勉強会についてのドキュメント(!=マニュアル)を作る カー

    オープンソースカンファレンス2008 Tokyo/Fall 勉強会大集合 LT - monjudoh’s diary
    yuiseki
    yuiseki 2008/10/05
  • オープンソースカンファレンス2008 Tokyo/Fall 勉強会大集合 パネルディスカッション - monjudoh’s diary

    運営コストを下げる 管理しない 同じ会場を使う (流行っている技術なら)企業に会場提供してもらう 居酒屋の宴会スペースを借りる 飲みにいって探す 昼間使わせてもらって、夜そのまま宴会 その辺で飲んでる人を探して良さげな居酒屋を聞く 土曜は空いてるパソコン教室を借りる 小規模ならカラオケルームにEモバ持ち込んで出来る 主催者が疲れないコツ ランチ(夜の懇親会をやる必要がなくなる) 主催者が動かない 主催する人が発表しない 大規模化に対応できる会場確保 地域ごとに分けるとか 参加の敷居 初参加を増やす方法 常連が増えると内輪感が増して参加しにくくならないか? 人数が少なくても内輪感を出す人がいる。それを指摘出来るようにしないと行けない。 元々内輪だというのを自覚してしまう 発表したいってのは自分の中という内輪を外に広げたいという欲求 新規参加者に伝える内輪・伝えるつもりのない内輪。後者は排除し

    オープンソースカンファレンス2008 Tokyo/Fall 勉強会大集合 パネルディスカッション - monjudoh’s diary
    yuiseki
    yuiseki 2008/10/05
  • 約30秒に一回/homeタイムラインの更新を確認し、更新した分だけ上に継ぎ足していってくれるJavaScript - monjudoh’s diary

    できたよー。 とりあえず現状はROM専用ということでおながいします。 jQueryを読み込ませた上で↓を実行する。 (function(){ var $ = jQuery; $('<div/>') .insertAfter('#container') .attr('id','temp'); (function(){ var func = arguments.callee; $.get('http://twitter.com/home',function(data){ // 取得したHTMLから#container内のみ取り出す var result = /<div\s+id="container"[^<>]*>/.exec(data); var start = result.index + result[0].length; var end = data.search(/<!--\s+\/

    約30秒に一回/homeタイムラインの更新を確認し、更新した分だけ上に継ぎ足していってくれるJavaScript - monjudoh’s diary
    yuiseki
    yuiseki 2008/02/06
  • Twitterの/homeのcontainerの中身のみ30秒に一度更新する - monjudoh’s diary

    2008/03/09追記 新バージョン作りました。 Twitterの/homeから欲しい情報だけ取り出す布石 - 文殊堂の続き。 jQueryを読み込ませた上で↓を実行する。 setInterval(function(){ var $ = jQuery; $.get('http://twitter.com/home',function(data){ var result = /<div\s+id="container"[^<>]*>/.exec(data); var start = result.index + result[0].length; var end = data.search(/<!--\s+\/container\s+-->/); var container = data.slice(start,end); $('#container').get()[0].inner

    Twitterの/homeのcontainerの中身のみ30秒に一度更新する - monjudoh’s diary
    yuiseki
    yuiseki 2008/02/06
  • 第1回1000人スピーカカンファレンス - monjudoh’s diary

    1000speakers:1 行ってきたー。 イベント情報のまとめ的なものは普通に↑のWikiにあるので、 気になったところのまとめ及び感想(二次会含む)を書きます。 id:amachang ブラウザ上で使われる技術になる条件 IEで実装される 他のブラウザでも一つは実装されている→標準化の際に叩けない Acid2テストはCSSの勉強用にとても良い。 id:yuum3 Lispは純粋な関数型言語じゃない(副作用を持つ関数を許しているから) Lispでプログラミングをするのは難しいけど、Lispの処理系を書くのは簡単。 なんか今id:amachangとid:nishiohirokazuとid:yukobaがlingrで実況しながらScheme処理系を作ってる Lispはポインタだらけなのでデバッグが大変→ユニットテスト重要 id:yad-EL 再帰とても重要 再帰を使う利点…変数の値を書き換

    第1回1000人スピーカカンファレンス - monjudoh’s diary
    yuiseki
    yuiseki 2008/01/20
  • Mozilla 24 出張 Shibuya.js 24行ってきた - monjudoh’s diary

    http://shibuyajs.org/articles/2007/08/24/Shibuya-js-24 INSIDE Gecko 資料 id:gyuqueによるFirefoxの中の人がHTMLを受け取ってから、 描画するまでにどういうことをやっているのかの解説。 興味はあったけどぜんぜん知らなかったので聞けてよかった。 講演のときは「違うよ。全然違うよ。」のところがマルチ・パンサーだったけど、 さすがにWeb公開版の資料では差し替えられてた。 AutoPagerize 資料 id:swdyhの次のページを自動で読み込んで、下に継ぎ足してくれるグリモン。 適用するURLを正規表現で、次のページのリンク・挿入する位置・次のページの中で挿入する部分をXPathで、 って形で必要なデータを切り出していて、それをWikiで管理してるんですと。 ユーザが設定ファイルを管理・共有するってのがいいね

    Mozilla 24 出張 Shibuya.js 24行ってきた - monjudoh’s diary
    yuiseki
    yuiseki 2007/09/19
  • 1