タグ

javascriptに関するleppsのブックマーク (111)

  • Googleマップをもっと簡単に使おう·gmaps.js MOONGIFT

    gmaps.jsはGoogleマップを使いやすくするJavaScriptライブラリです。 GoogleマップではJavaScriptAPIも提供されていますが、使い勝手が良いとは言えません。活用していくならばもっと使いやすいgmaps.jsを利用しましょう。 まず普通の表示。GMapsに位置情報を渡すだけです。超簡単。 イベントも取れます。クリックやドラッグなど様々なイベントが使えます。 マーカーの追加も分かりやすいです。マーカーにイベントをつけるのも簡単。 HTMLコンテンツを表示するのも手軽です。 HTML5の位置情報取得にも対応しています。 住所を検索してジオコーディング。 ドローです。指定は大変ですが。 オーバーレイ表示です。 ルート検索です。二つの位置情報を渡すだけです。 ルート検索をさらにポイントごとに表示していくこともできます。 こちらは静的なマップ。画像として表示できます

    Googleマップをもっと簡単に使おう·gmaps.js MOONGIFT
  • これはいい!ドロップダウンに画像と説明文を追加·ddSlick MOONGIFT

    ddSlickはドロップダウンメニューにアイコン、説明文を追加できるjQueryライブラリです。 常々HTMLのコンポーネントは貧弱だと思っていた。特にドロップダウンの使い勝手の悪さったらない。テキストしか表示できず、情報選択のUIとしてあまりに粗雑ではなかろうか。そしてみんなが望んでいたライブラリが登場した。それがddSlickだ! 見よ、この格好いいドロップダウン!テキストに加えて画像が表示できるようになっています! ダイナミックに変更も可能です。まず普通のドロップダウン。実にいけてない。 じゃじゃーん! もちろん普通のドロップダウンライクに値が取得できます。選択した項目のデータも取れます。 外部から値を与えて表示項目を変更することもできます。 コールバック対応! デフォルトの選択もできます。 画像を右に寄せられます。 さらに説明をつけて行ごとに高さを可変にもできます。 画像がない場合

    これはいい!ドロップダウンに画像と説明文を追加·ddSlick MOONGIFT
  • 1行のコードで既存のテーブルにソート機能を追加·Table Sorting MOONGIFT

    Table Sortingは既存のHTMLテーブルにソート機能を追加するJavaScriptライブラリです。 業務システムなどでテーブルを表示すると常に足らない機能を求められます。その第一が並べ替え機能でしょう。DBを操作しても良いですが、もっと単純に解決したいならTable Sortingを使ってみても良さそうです。 デモです。 カラムのクリックでソートが実行されます。 金額部分もきちんとソートされます。 JavaScriptのコードです。単純にクラスを指定するだけ。 HTMLのコードです。数値部分にも特に設定を行っていないところに注目。 Table Sortingは既存のテーブルを渡すだけで自動的にソート機能を追加してくれます。オブジェクトの型も判断して並び替えてくれるので手間いらずです。 Table SortingはJavaScript製、GPL v3のオープンソース・ソフトウェアで

  • ガントチャートからiTunes風表示まで。Dojoを使ったグリッドライブラリ·dgrid MOONGIFT

    dgridはDojoを使ったWebブラウザ向けグリッドライブラリです。 jQueryなどと並んで有名なJavaScriptライブラリのDojo。そんなDojoで使える高機能グリッドフレームワークがdgridです。 iTunes風の表示です。アルバムやアーティストを選択すると内容が変わります。 ガントチャート風表示です。タスク同士の関連性が表現できています。 サブタスクも表示できます。 テーブル表示です。 クリックで説明を表示します。 詳細リスト表示です。 ギャラリー表示です。 Todoデモです。 消し込めます。データはローカルストレージに保存されるので再読みしても消えません。 dgridの特徴としてはモダンなアーキテクチャ、機能拡張対応(カラムのリサイズ、ドラッグアンドドロップによる並べ替えなど)、スキン、モバイル対応、キーボード操作対応となっています。デスクトップブラウザはもとより、iO

  • JavaScript/CSSを使ってスクロールによるアニメーションを実現·skrollr MOONGIFT

    skrollrはCSSを使ってスクロールによってアニメーションを実行するライブラリです。 最近プロジェクトやアプリ紹介ページで見られるようになったスクロールアニメーション。それを実現するライブラリがskrollrです。 デモです。スクロールを開始します! 回転しながら飛んでくる文字! 下から上がってくる文字! 横からスライドも。 色が変わりました。それに合わせてテキスト色も変わっています。 上下からボックスが迫ってきます。 終了です。逆に上に上がっていくとアニメーションが逆に展開されていきます。 デモ動画です。スクロールすると次々と内容が変わっていきます。 実用性という意味ではあまり大きくなさそうですが、インパクトは強烈です。サイト全体を作るというよりも、ランディングページや紹介ページで使うと効果的でしょう。 skrollrはJavaScript/CSS製のオープンソース・ソフトウェア(M

    JavaScript/CSSを使ってスクロールによるアニメーションを実現·skrollr MOONGIFT
  • 格好いい!折り畳んだ紙を開くようなアクションを実現·Paperfold CSS MOONGIFT

    Paperfold CSSは中間のメッセージを折り畳んで表示し、クリックで開く3Dアクションを施すJavaScriptライブラリです。 これはアイディアの勝利!Paperfold CSSを使うと折り畳んだメッセージを開いて表示したりする際に効果的に見せられるようになりそうです。 デフォルトの表示です。See 5 More Postsという表示があります。そこをクリックします。 徐々に開いていきます。 折り畳まれた部分が開いて表示されました。 デモ動画です。折りたたみの量などは自由に設定できます。しかも3Dであり、マウスで回転させたり見る向きを変更できたりします。 Paperfold CSSはGmailの多数のリプライが重なった時のメッセージ群を表示する際のやり方に近いです。面白い使い方が出来そうです。 Paperfold CSSJavaScript製のオープンソース・ソフトウェア(Pub

  • 滑らかに自然なページ送りができるJavaScriptライブラリ·turn.js MOONGIFT

    turn.jsはタブレットやスマートフォンで使えるWeb向けのページ送りライブラリです。 turn.jsはリアルなページ送りができるWebベースのソフトウェアです。ハードウェアアクセラレーションを使い、滑らかに動きます。 四隅にマウスを持っていくと小さくカールします。ここをドラッグして引っ張ります。 ページをめくります。何となく海外のページの薄い雑誌をめくっているような感じです。 それ以外にもページの端にマウスを持っていくと矢印が出ますので、これをクリックしてもページめくりされます。 右から左の他、逆に左から右へもめくれます。 デモ動画です。 この手のライブラリは幾つかありますが、turn.jsは水平にページがカールするだけではなく、実際の雑誌のように斜めにカールしてページ送りできるのが特徴と言えます。ただ、その雰囲気がTime誌のような作りでちょっとペラペラな感じになってしまうのが残念で

  • クライアントサイドだけでファイルを保存する·FileSaver.js MOONGIFT

    FileSaver.jsはクライアントサイドでデータを生成しダウンロードするJavaScriptライブラリです。 Webアプリケーションが増える中、Webブラウザ上で作ったコンテンツをそのままエクスポートする時に使えるライブラリがFileSaver.jsです。 まず画像を保存するデモです。 こんな感じに適当にマウスで文字を書きます。 ファイル名をつけて保存ボタンを押すと保存が実行されます(ウィンドウ下部にダウンロードファイルがあります)。 ダウンロードされたファイルです。内容が動的に生成されているのが分かります。 同様にテキストの保存もできます。 テキストファイルの内容も動的です。UTF-8で作成されます。 HTMLファイルの保存もできます。 FileSaver.jsはコンテンツをCanvasタグにレンダリングし、それをダウンロードしているようです。HTML5対応ブラウザに限定されますが、

  • 要チェック!Webベース、Ajaxを使った表計算ソフトウェア·dhtmlxSpreadsheet MOONGIFT

    dhtmlxSpreadsheetは多数のWebブラウザに対応したWebベース表計算ソフトウェアです。 WebベースでもExcelのような編集がしたい、そんなニーズに応えるのがdhtmlxSpreadsheetです。PDFExcelでのエクスポートにも対応した、すごいソフトウェアです。 まさに表計算といった感じの画面です。 計算式の埋め込みももちろんできます。 値を更新すれば計算式の入ったセルも更新されます。 セルの背景、文字色の変更もできます。 右寄せ、中央寄せも可能です。 計算式も多数用意されています。 マウスのドラッグで範囲選択可能です。 PDFエクスポート(実際には外部サービス利用)できます。日語は表示されません。 同様にExcelでの出力にも対応しています。こちらは日語に対応しています。 設定です。 セルの幅は変更できますが、カラムをクリックして全体選択といったことはできま

    要チェック!Webベース、Ajaxを使った表計算ソフトウェア·dhtmlxSpreadsheet MOONGIFT
  • UMLなんて…と言わずに試してほしい。JavaScriptで描画する·jsUML2 MOONGIFT

    jsUML2はJavaScript、Canvasタグを使ってUMLを描画するソフトウェアです。 2000年くらいの登場以降、一気に花開くかと思ったUMLですが、エンタープライズの開発くらいでしか聞かれなくなってしまいました。設計段階で全てを表すのはなかなか難しいですが、多数の人たちが開発に関わるならば現状システムをUMLで表してみたりするのは面白いかも知れません。そんなUMLをWebブラウザ上に描けるのがjsUML2です. jsUML2のデモです。実際にオブジェクトを自分で描けるようになっています。こちらはユースケース図。左側のオブジェクトをクリックして選択し、キャンバスの任意の場所をクリックして配置します。コネクションの場合は二つのオブジェクトをクリックすると自動的にラインが描画されます。 クラス図です。 メソッド、プロパティの追加も簡単です。 コンポーネント図です。 シーケンス図です。

  • node.jsでライトなWebアプリケーションを組むのに最適なフレームワーク·Strata Web Framework MOONGIFT

    Strata Web Frameworkはnode.js用のWebフレームワーク。Sinatraライクな記述ができる。 Strata Web FrameworkはJavaScript/node.js製のオープンソース・ソフトウェア。Webアプリケーションを開発する際に開発効率を向上するフレームワークの存在は欠かせない。だが何でもできるフレームワークというのは総じて大型で、ちょっとしたものを動かすのは向かないことが多い。 コード そこで注目したいのは小さなWebアプリケーションを開発するためのフレームワークだ。Rubyで言えばSinatraが人気だ。そんなSinatra風フレームワークのnode.js版と言えるのがStrata Web Frameworkだ。 素のnode.jsを使ってWebアプリケーションを構築することはもちろんできるが、よりシンプルにしてくれるのがStrata。クエリパラ

  • デスクトップ用Webブラウザでもスマートフォンライクにタッチ操作を可能にする·Touché MOONGIFT

    Touchéはデスクトップブラウザでタッチ、アンタッチ、移動のアクションを使えるようにするJavaScriptライブラリです。 Touchéはマウスイベントをタッチ操作として認識できるようにするJavaScriptです。デスクトップ向けWebブラウザでもスマートフォン風な操作ができるようになります。 画面のどこかをクリックするとタッチイベントとして認識されます。 認識できるのはタッチ(クリック)した時、タッチし終わった時そしてマウスを動かしている時になります。それぞれコールバック関数を指定しておいて何らかのアクションにつなげられます。 マウスムーブ時の認識 単純なタッチの他に、Ctrlキー、Altキー、コマンド/Windowsキーを押しながらタッチしたかどうかの認識もできます。ウィンドウ上のX/Y座標に加えて、画面上のX/Y座標も受け取れるようになっています。 指定できるイベントリスナーの

  • どのフレームワークが最適か。多彩なJavaScriptフレームワークで実現したTodoアプリ·TodoMVC MOONGIFT

    TodoMVCはTodoアプリを多様なJavaScriptフレームワークで実現、比較できるソフトウェア。 TodoMVCはHTML/JavaScript製のフリーウェア(ソースコードは公開されている)。今はJavaScriptが隆盛とあって、Webサイト開発において大抵利用される。そんな中、どのJavaScriptフレームワークを使うべきか適切に検討しているだろうか。慣れだけ考えてjQueryに落ち着いてしまったりしていないだろうか。 色々なフレームワークが試せる もちろん慣れはとても大事な要素ではある。だが全ての開発が一つのJavaScriptフレームワークでまかなえる訳ではない。もっと様々なフレームワークを検討すべきだ。そんな時の目安になり得る、とても面白いプロジェクトがTodoMVCだ。 TodoMVCはTodoアプリで、Web上でタスクを入力して登録し、チェックボックスを付けて消化

  • あの機能が使えるかどうか。HTML5/CSS3の機能単位の判別ライブラリ·Modernizr MOONGIFT

    ModernizrはHTML5/CSS3を機能単位で実装状況を判断するJavaScriptライブラリ。 ModernizrはJavaScript製のオープンソース・ソフトウェア。数年前まではブラウザによって動く機能、動かない機能というのがあった。それらを吸収するライブラリとしてPrototype.js/jQueryなどがもてはやされた。今、時代はHTML5に変わろうとしているが話はさらにややこしくなっている。 テスト WebKitはブラウザバージョンという概念さえ持たない。Google Chromeが日々バージョンが変わっている。IEもバージョンが増えており、ブラウザによってHTML対応具合が細かく違っている。そんな中でHTML5を進める際に使ってみたいライブラリがModernizrだ。 Modernizrはブラウザごとの判断ではなく、機能ごとに使える/使えないを判断するライブラリだ。例え

  • スマートフォンに特化することでjQuery API互換ながら5KB以下なJavaScriptライブラリ·Zepto.js MOONGIFT

    Zepto.jsはjQuery API互換のスマートフォンブラウザ向けJavaScriptライブラリ。 Zepto.jsはJavaScript製のオープンソース・ソフトウェア。最近のWebシステム開発ではjQueryを使わないことがなくなったとさえ言えるかもしれない。それくらい頼り切ってしまっている。普通にJavaScriptを書くのが苦しくなるくらいだ。 サンプル。大抵の機能はデスクトップブラウザにも対応。 そのためスマートフォン向けのサイトでもjQueryを使ってしまう。だがデスクトップのように高速な回線でない場合もあるため、jQueryの90KBくらいのサイズは非常に重たいのだ。そこで使ってみたいのがjQuery API互換の軽量ライブラリであるZepto.jsだ。 Zepto.jsは何と5KB以下で提供されている。eachやmap、$を使ったDOMアクセス、Ajax、findなど基

  • 写真に埋め込まれたメタデータ、ExifをJavaScriptで読み取る·Javascript EXIF Reader MOONGIFT

    Javascript EXIF ReaderはJavaScriptを使った写真のExifデータ読み取りライブラリ。 Javascript EXIF ReaderはJavaScript製のオープンソース・ソフトウェア。HTML5のCanvasタグを使い、JavaScriptでバイナリ解析を行うのが流行っている(?)昨今、皆様はいかがお過ごしでしょうか。元気にバイナリ解析をしているでしょうか。 デモの写真 今までであれば、バイナリファイルをサーバに送信して解析結果をWebブラウザで受け取って表示する、そんなやり方が当たり前だった。しかし今は違う。クライアントサイドで解析してその結果をサーバに送るのだ。その一つ、Exif解析を行うのがJavascript EXIF Readerだ。 Exifというのは写真などのJPEG画像に入ったメタ情報だ。撮影した時間や場所、カメラ、シャッター、絞り等カメラと

  • Webベースで開発できるレベルのプログラミングエディタ·Ace MOONGIFT

    AceはCloud9でも使われているWebベースのプログラミングエディタ。 AceはJavaScript製のオープンソース・ソフトウェア。あまり好まない人も多いようだが、個人的にはそろそろ開発環境もWebアプリケーション化してくれないかと思っている。そのためには幾つか乗り越えるべき問題があるが、最初の問題はエディタ環境だろう。 行番号の計算が適切でいい Webブラウザのテキストエリアレベルでは全く話にならない。プログラマーが開発しやすいエディタになっている必要がある。そんなWebベースの開発環境を目指すIDE、Cloud9で使われているエディタ環境を作っているのがAceになる。 AceはJavaScriptベースの独立したエディタ環境になる。そのため外部のソフトウェアに組み込むことも可能だ。10種類以上の言語に対応したハイライター、縦または横に画面を分割したり、テーマを変更して色合いをがら

  • クライアントサイドだけで作るスマートフォン最適化サイト·mobilize.js MOONGIFT

    Mobilize.jsはデスクトップ向けのHTMLJavaScriptで組み替えてスマートフォンに最適化された表示にするJavaScriptライブラリ。 Mobilize.jsはHTML5/JavaScript製のフリーウェア(オープンソースとなっているがライセンスはなし。ソースコードは公開されている)。スマートフォンのシェアが増えるに従って、従来のWebサイトにおけるスマートフォン最適化サイトのニーズが高まっている。iPhoneAndroidからのアクセスに対して最適化されたUIを提供することでユーザビリティを高めるのだ。 最適化表示 幾つかのやり方があるが、一つはサーバ内でアクセスを判別してビューを切り替えたり、サブドメインを分けてしまうと言った方法がある。今回紹介するのはどちらでもない。なんとクライアントサイドだけで行ってしまうのだ。 Mobilize.jsはjQuery Mob

  • 家系図、ER図、UML。JavaScriptでダイナミックに図を描く·Joint MOONGIFT

    JointはUMLや家系図、ER図などをダイナミックに描くJavaScriptライブラリ。 JointはJavaScript製のオープンソース・ソフトウェア。Webでは簡単に表現できることから、テキストベースでのコンテンツが多い。だがテキストに溢れたWebサイトというのは見ていて疲れてしまうものだ。グラフがあるとインパクトも大きい。 家系図 だがデータベース等にあるデータをWeb上で表現するのは大変で、サーバ側での何らかのライブラリが必要になるケースが多い。そこで使ってみたいのがJointだ。 JointはJavaScriptで図を描くライブラリで、多彩な種類に対応している。例えば家系図、ER図、各種UML、DEVS、ペトリネットなどだ。さらにオブジェクト同士の接続方法も多様に用意されており、直線や曲線など多彩にある。接続を指し示すときの矢印すら数多い。 マウスで動かせる さらに面白いのは

  • 次の情報を右へ右へ展開する新しいナビゲーションUI·Kaiten MOONGIFT

    KaitenはjQueryを使って左右に展開するナビゲーションインタフェース。 KaitenはjQuery/JavaScript製のオープンソース・ソフトウェア。Webではリンクを使って情報を辿っていく操作が基だ。そのため以前の情報に戻る操作が増えたり、別なウィンドウやタブで開いたりしてどんどん情報が溢れてしまう。 右に情報が表示されていく スマートな解決策としてAppleが提案しているのが横にスライドしていく操作だ。次の情報はどんどん右に展開しているので戻ったり関連性を見いだすのも難しくない。そんなデータ表示をWebで再現するのがKaitenだ。 Kaitenは新しいWebナビゲーションを提案する。まず最初に表示される情報は左側になる。その中のリンクをクリックすると右側に展開する。さらにクリックしていくとどんどん右に展開する。ヘッダーでは現在表示しているコンテンツがハイライトになり、パ