タグ

jsとJavaScriptに関するbasiのブックマーク (48)

  • 最近のJavaScriptモジュールの書き方 - yo_waka's blog

    サーバサイド(特にNode.js)とクライアントサイド両方で動かしたいものは最近はこんな感じで書いている。 CommonJSのwiki見ててそこに紹介されてるソースコードで(どれだったか忘れたけど。。)やってたのを見ていいなーと思って真似っこした。 (function(define) { define([], function() { 'use strict'; /** * @constructor */ var SomeClass = function() { // initialize }; /** * @type {string} * @private */ SomeClass.prototype.hoge_ = 'hoge'; /** * @return {string} */ SomeClass.prototype.getHoge = function() { return th

    最近のJavaScriptモジュールの書き方 - yo_waka's blog
  • はてなブログ | 無料ブログを作成しよう

    来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…

    はてなブログ | 無料ブログを作成しよう
  • Node.jsとは何か、開発者ライアン・ダール氏が語る(後編)~ 複数コネクションの並列処理とデバッグ

    Node.jsとは何か、開発者ライアン・ダール氏が語る(後編)~ 複数コネクションの並列処理とデバッグ いま注目されているサーバサイドJavaScriptの火付け役となったNode.js。その開発者であるライアン・ダール(Ryan Dahl)氏自身がNode.jsを紹介した講演「Introduction to Node.js with Ryan Dahl 」のビデオが公開されています。 この講演は、サンフランシスコのPHP開発者の集まりであるThe SF PHP Meetup Groupが2月にダール氏を招待して行われたもの。 そのため、Node.jsを知らないデベロッパーに向けて、Node.jsがどのような特徴を持つプログラミング言語なのか、分かりやすく解説しています。内容を紹介しましょう。 (記事は「Node.jsとは何か、開発者ライアン・ダール氏が語る(前編)~ノンブロッキングとは

    Node.jsとは何か、開発者ライアン・ダール氏が語る(後編)~ 複数コネクションの並列処理とデバッグ
  • IDEA * IDEA

    ドットインストール代表のライフハックブログ

    IDEA * IDEA
  • jQuery1.4の新機能を1.4だけに14個 - KAYAC engineers' blog

    時が経つのは早いもので、ぼーとしてたらもう1月も終わりそうですね。外村です。 先日リリースされたjQuery1.4で新しく追加されたメソッドや新しい使い方ができるようになった機能を全部ではないですがいくつか紹介します。以下に変更点が全て掲載されているのでそちらも参照するといいと思います。 Version 1.4 ? jQuery API 新規で追加されたメソッド 1. nextUntil()、prevUntil()、parentsUntil() 指定したセレクタまでの要素を返します。以下の例ではitem3とitem4の後ろにテキストが追加されます。 <ul> <li id="item1">item1</li> <li id="item2">item2</li> <li id="item3">item3</li> <li id="item4">item4</li> <li id="item5

    jQuery1.4の新機能を1.4だけに14個 - KAYAC engineers' blog
  • [ThinkIT] 第3回:YUIライブラリと外部JSの呼び出し手法 (1/2)

    「第2回:jQueryライブラリの内部とonloadイベント記法」で解説したPrototypeとjQueryはどちらも個人がリリースするライブラリでしたが、今度は、より規模の大きなライブラリの事例をご紹介します。Yahoo! UIライブラリ(YUI)は、米国Yahoo!がBSDライセンスで提供するJavaScriptライブラリです(図3、注5)。 個人だけでなく、YUIのように大手企業もライブラリを公開する事例が増えてきています。YUIでは、Ajaxやイベント管理といった基機能に加えて、アニメーションやドラッグ&ドロップ処理のユーティリティ、さらにカレンダー/ツールチップ/ダイアログ/タブ表示/ツリー表示といった豊富なウィジェットが提供されているのが特徴です。 YUIは、表3に示す14のモジュールで構成されています。 モジュール名 主な用途

  • HTML/JavaScript/CSSをシェイプアップ!·Patu Digua MOONGIFT

    HTMLJavaScriptCSSを構造化して見やすく書こうと思うとインデントやスペースを使うだろう。確かに見やすいが、ブラウザへのレンダリングを行う上では特に意味はない(中には意味のあるスペースもあるが)。できるだけ転送量を抑えようと思うと、このスペースをなくしていくという作業が大事になる。 HTML/JavaScript/CSSのサイズを軽減 そのためのツール(難読化ツール)はいくつか存在するが、HTML/JavaScript/CSSのいずれにも対応したものは多くない。そこでPatu Diguaだ。 今回紹介するオープンソース・ソフトウェアはPatu Digua、HTML/JavaScript/CSSからスペースやコメントを排除するソフトウェアだ。 Patu DiguaはJavaで作られたソフトウェアで、Windows/Mac OSX/Linuxで動作する。指定したファイルからコメ

    HTML/JavaScript/CSSをシェイプアップ!·Patu Digua MOONGIFT
  • JavaScriptで本文抽出·ExtractContentJS MOONGIFT

    ExtractContentJSはJavaScript製のオープンソース・ソフトウェア。ブログやWebサイトのデータを集積して、そこから情報を吸い出して何らかのサイトを構築するというサービスは多い。その時重要になるのが特定URLからの文抽出だ。サイドバーやヘッダーなど余計な情報を省くことでより意味のあるコンテンツが得られるようになる。 画面下の文字列が文抽出した結果 Rubyであれば以前紹介したExtractcontentというライブラリがある。そしてそれをベースのはてなにてJavaScript実装したのがExtractContentJSだ。JavaScriptベースの実装とあって、クライアントベースで抽出を行いたいという時に使えそうなライブラリだ。 使い方は簡単で、ExtractContentJSのオブジェクトを作ったら現在表示されているページのオブジェクト(document)を渡す

    JavaScriptで本文抽出·ExtractContentJS MOONGIFT
  • innerHTML と outerHTML の使用可否のまとめ

    ie で読み取り専用になっている要素タグには innerHTML は使えません。代替手段として outerHTML を利用して動的に書き換えるテクなどがあります。読み取り専用の要素は例えば table 要素が該当しますが、ちょっとやそっと調べたところで何が読み取り専用の要素なのか資料がでてきません。 と言うわけで適当にスクリプト書いて調べてみました。取りあえず調べた要素は以下の通りです。Internet Explorer Developer Center < meta Object に記述されている要素一覧です。html 要素は outerHTML すると ie がフリーズするので調査対象外です。 <a> <abbr> <acronym> <address> <applet> <area> <attribute> <b> <base> <baseFont> <bdo> <bgSound> 

  • ブラウザのCSS3、HTML5絡みの対応が一発で分かるようにできるライブラリ「Modernizr」:phpspot開発日誌

    ブラウザのCSS3、HTML5絡みの対応が一発で分かるようにできるライブラリ「Modernizr」 2009年07月07日- Modernizr ブラウザのCSS3、HTML5絡みの対応が一発で分かるようにできるライブラリ「Modernizr」 ライブラリを使って、Canvas、opacity、Multiple backgrounds といったCSS3やHTML5の機能に対応しているかを簡単に調べることが出来るようです。 Google Ghrome の場合で対応を明示 Firefox 3 の場合で対応を明示 JavaScript では、次のように使えるようです。 if (Modernizr.cssgradients) { alert('対応'); } else { alert('未対応'); } cssgradients の他には以下のようなプロパティが利用可能。 Modernizr.ca

  • HTML5で実装される予定(だった)videoタグを旧ブラウザでも·video4all MOONGIFT

    各ベンダーの意向が揃わず、HTML5での仕様策定が断念されたvideoタグではあるが、オンラインでの動画閲覧がこれだけ広まっているのであればやはり何らかの仕様が欲しいだろう。そんな企業の思惑を越えて動けるのが開発者だ。 Safari4の場合 videoタグはHTML5をサポートしたブラウザでしか動かないが、旧来のブラウザでも可能にするのがvideo4allだ。 今回紹介するオープンソース・ソフトウェアはvideo4all、多数のブラウザでvideoタグを利用可能にするJavaScriptだ。 video4allはvideoタグを各ブラウザの仕様に合わせて表示を変更するJavaScriptライブラリだ。対応するのはFirefox 3.0/2.0、IE6〜8、Opera、Safari2、Chromeとなっている。Safari4やFirefox3.5についてはvideoタグがそのまま使われる。

    HTML5で実装される予定(だった)videoタグを旧ブラウザでも·video4all MOONGIFT
  • JavaScriptの正規表現をパワーアップ!·XRegExp MOONGIFT

    ※ 画面は公式サイトより Webアプリケーションを開発したり、よりコーディング量を少なくシステムを開発する上で正規表現の存在は欠かすことができない。良い正規表現を組めるかどうかで見通しの良いシステムができるかどうか決まってくるだろう。 Named captureをJavaScriptでも 昔からある正規表現ではあるが、JavaScriptでサポートされているものは機能があまり多くない。他のプログラミング言語同等のレベルに引き上げてくれるのがXRegExpだ。 今回紹介するオープンソース・ソフトウェアはXRegExp、JavaScriptの正規表現を機能強化するライブラリだ。 XRegExpは通常使える正規表現機能に加えて、幾つかの機能追加を行っている。特徴的なものとしては、Named captureがあるだろう。これは正規表現のマッチング結果を$1、$2ではなく、指定した名前(nameやv

    JavaScriptの正規表現をパワーアップ!·XRegExp MOONGIFT
  • JavaScriptのvar_dump·prettyPrint.js MOONGIFT

    PHPの開発者であれば皆使うのがvar_dumpだ。開発中はもちろんデバッグ時などに非常に重宝する。エラーがあっても出力してくれるので、これがなければ生活できないという人も多いのではないだろうか。 JavaScriptでも変数のダンプを メソッドを調べる必要もなく、知りたいものを関数に入れれば全ての情報を出してくれる。そんなvar_dumpの魅力をJavaScriptでも再現したのがprettyPrint.jsだ。 今回紹介するフリーウェアはprettyPrint.js、JavaScriptの変数ダンプライブラリだ。ソースコードは公開されているが、ライセンスは明記されていなかったのでご注意いただきたい。 prettyPrint.jsはJavaScriptのオブジェクトを指定すれば、その中身をダンプし、テーブル組で見やすく表示してくれるライブラリだ。PHPのvar_dumpよりも、cfdum

    JavaScriptのvar_dump·prettyPrint.js MOONGIFT
  • PHPのSpiderMonkey拡張を使ってPHPコード内でJavaScriptを使うチュートリアル:phpspot開発日誌

    PHPGoogleMapのジオコーディングAPIを簡単に使えるサンプルコードとラ... 次の記事 ≫:ブラウザで快適に見れるSymfony開発チートシート Using JavaScript in PHP with PECL and SpiderMonkey PHPのSpiderMonkey拡張を使ってPHPコード内でJavaScriptを使うチュートリアルが zend.com にて紹介されているみたいです。 インストール手順〜サンプルコード、動作結果までが紹介されています。 かなり前に「php-js」という同様にspidermonkeyを使うものを紹介しましたが、こちらも以下のようなコードがかけて、なかなか興味深い <?php // 拡張インストールで使えるようになったJSContextのinstanciate $js = new JSContext(); // 変数定義 $a = 10

  • JavaScript で、画像本来のサイズ(幅, 高さ)を取得する方法 - latest log

    Opera で DOM Mutation Event を使用するコードを追記しました。 まとめを追加しました。 Opera パート2に取得できないケースが見つかったため、パート3 を追加しました。 rhino.jpg(幅:300px, 高さ:227px) を、 <img id="rhino" src="rhino.jpg" width="100" height="75" /> と、100 x 75 で表示している場合を例に、画像来のサイズを取得する方法をご紹介します。 Firefox, Safari, Google Chrome なら image.naturalWidth と image.naturalHeight を利用します。 image.naturalWidth と image.naturalHeight の初期値は 0 です。画像の読み込みが完了した時点で適切な値に更新されます。

  • リアルタイム入力チェックのJavaScriptライブラリ·yav MOONGIFT

    時々、Webサイトで入力している内容をその場で判定するものがある。入力必須の項目やメールアドレス、パスワードの一致などでエラーがあればすぐに表示してくれるので、送信してから修正すると言った二度手間がなくて便利だ。 Webブラウザ上で入力チェックを実行する サーバ側でも入力チェックは行うが、ユーザビリティを考えるとオンラインでも検証したい。そんな検証システムを簡単に作れるのがyavだ。 今回紹介するオープンソース・ソフトウェアはyav、JavaScriptの入力チェックライブラリだ。 yavは入力必須はもちろん、数字のみや文字のみといったチェックもできる。メールや日付、文字の長さなどといったフォーマットによるチェックや、「and」と「or」による他の項目の値によって入力チェック内容を変更する機能もある。多言語にも対応している。 設定はこのようになる 入力フォーマットを規定することも可能で、予

    リアルタイム入力チェックのJavaScriptライブラリ·yav MOONGIFT
  • Ajaxによるリアルタイムプッシュエンジン·APE MOONGIFT

    Google Waveの発表で、一気にリアルタイムストリームへの流れが強まっている。基盤的な技術になるのはCommetやXMPPといったプッシュ配信を可能にする技術だ。相互のやり取りがリアルタイムになれば、コラボレーションはもっと素晴らしいものになるだろう。 トップページには同じURLを見ている人たちと会話を楽しめるデモ そんなプッシュ配信技術はCommetのような新しいもの、XMPPのように古参のものと幾つか存在する。その一つにAPEがある。 今回紹介するオープンソース・ソフトウェアはAPE、Ajaxによるプッシュ配信を行うサーバソフトウェアだ。 APEはAjax Push Engineの略称だ。技術的にはAjaxのみを使い、特別なプラグインなどを必要とせずにプッシュ配信を行うのが特徴だ。そのため、IE/Firefox/Safari/OperaといったWebブラウザはもちろんのこと、iP

    Ajaxによるリアルタイムプッシュエンジン·APE MOONGIFT
  • JavaScript正規表現メモ。 (JavaScriptでよく使う書き方。) - こせきの技術日記

    タイトル変えました。旧タイトル「JavaScriptでよく使う書き方」。よく使うけど毎回忘れる。 正規表現にマッチするかどうか。 RegExp#testを使う。 /abc/.test("abcdefg") // => true String#searchはマッチした位置を返す。マッチしない場合は-1。先頭にマッチすると0でfalseなので注意。真偽値が欲しい場合はString#searchを使わない。 "abcdefg".search(/xxx/) // => -1 "abcdefg".search(/def/) // => 3 "abcdefg".search(/abc/) == false // => true 正規表現の部分マッチを得る。 部分マッチを得るには、RegExp#execかString#matchを使う。execとmatchの速度は大して変わらない。 正規表現のベンチマー

    JavaScript正規表現メモ。 (JavaScriptでよく使う書き方。) - こせきの技術日記
  • クロスブラウザで動作するJavaScriptデバッグツール「NitobiBug」:phpspot開発日誌

    NitobiBug - Browser based debugger クロスブラウザで動作するJavaScriptデバッグツール「NitobiBug」。 include すると、nitobi オブジェクトが使え、Debug.log メソッドで画面に変数を出力できるみたい コードサンプル var testString = "This is a test string"; nitobi.Debug.log(testString); var obj = {prop1:3423,prop2:"gdfgdfg",prop3:[234,2321,645,3.3]}; nitobi.Debug.log(obj); var arr = [234,2321,645,3.3]; nitobi.Debug.log(arr); 出力例 ブラウザにconsoleが無い場合、このライブラリを使えば同じようなことが同一

  • 凄い!jQueryでリボンメニューを実現する·jQuery Ribbon MOONGIFT

    MS Office 2007から採用されたリボンメニュー。今は(といっても2年前からあるが)まだ違和感があるかも知れないが、徐々にリボンメニューを採用したソフトウェアも増えており、慣れると使いやすさは向上していることに気づくはずだ。 jQueryで実現するリボンメニュー! そんなリボンメニューをブラウザで使える、そんなライブラリがjQuery Ribbonだ。 今回紹介するオープンソース・ソフトウェアはjQuery Ribbon、jQueryでリボンメニューインタフェースを提供するソフトウェアだ。 jQuery RibbonはjQueryを使ってあのリボンメニュー風インタフェースを実現する。凄いのは全てのインタフェースがリスト(ulタグ)だけで実現されていることだろう。そのためJavaScriptがオフであっても機能はするはずだ。 メニュー リボンインタフェースはもちろん、左上にはツリーメ

    凄い!jQueryでリボンメニューを実現する·jQuery Ribbon MOONGIFT