タグ

関連タグで絞り込む (376)

タグの絞り込みを解除

JavaScriptとjavascriptに関するzegenvsのブックマーク (476)

  • javascript [paulownia.jp]

    Java等のオブジェクト指向はクラスベースのオブジェクト指向と呼ばれる。一方、JavaScriptはプロトタイプベース、あるいはインスタンスベースオブジェクト指向と呼ばれる。 クラスベースは、まずクラスを定義し、クラスを型とするインスタンスを作成することでプログラミングする。プロトタイプベースによるオブジェクト指向では、クラスの定義は必須ではなく場合によってはクラスという概念自体が存在しない。既存のオブジェクトのクローンとして新しいオブジェクトを作成し、そのオブジェクトに独自の性質を付加してプログラミングする。 JavaScriptのオブジェクトの性質は動的に変更可能。Java等では一度決定したオブジェクトの振る舞いは変更できないが、JavaScriptでは実行中の任意の場所でメソッドの動作を変更したり、新しく追加したり、削除したりすることができる。

  • Collection & Copy - MochiKit、マウスホイール

    MochiKit、マウスホイール JavaScript やっつけ。 Firefoxのみconnectを置き換えて、スクロール量を平均化するメソッドも追加して、 if(document.addEventListener){ connect = function(src, sig){ sig = sig=='onmousewheel' ? 'onDOMMouseScroll' : sig; return MochiKit.Signal.connect.apply(null, [].slice.apply(arguments)); } } function getWheelDelta(evt){ evt = evt.event(); return evt.wheelDelta ? evt.wheelDelta / 120 * (window.opera? 1 : -1) : evt.deta

  • GreasemonkeyでEmacsチックなテキストエディタ - gotin blog

    Greasemonkeyでテキストエディタに影響され、 同じようなものを作ってみてしまいました。 Emacsチックにして、JavaScriptでコンフィグしたり何やりできたらいいかな〜と思い、 それを実現したつもりです。 こちら↓です。 g_editor.user.js [特徴] ・Greasemonkey名前空間内に仮想ファイルシステムを構築し、それを利用 ・JavaScriptで設定やら何やらする ・その延長で、Greasemonkeyっぽいこともできる ・その延長で、HTTPアクセスしてHTMLとかをテキスト編集エリアに出力 [使い方など] Greasemonkeyの名前空間(?)に仮想的なファイルシステム(っていうのかな?)を作ります。 ファイルパスセパレータは"/"で、ルートは"/"です。 インストール後、最初の実行状態では"/"しかありません。 が、最初の初期化処理で/init

    GreasemonkeyでEmacsチックなテキストエディタ - gotin blog
  • 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 - 相対パスを絶対パスに変換する

    JavaScriptIE 6、IE 7、Firefox 2.0、Opera 9で確認。 function absolutePath(path){ var e = document.createElement('span'); e.innerHTML = ''; return e.firstChild.href; } alert(absolutePath('/')); 関連リンクJavaScriptな日々 | 相対パスを絶対パスに変換する方法Imageを使っています。 getAttribute href bugBug Report: getAttribute(”HREF”) is always absolutegetAttribute("href",2)とか。既存のa要素のhrefは上記の方法で絶対パスになるけど、document.createElement('a').href='/'では、

  • [javascript][抜粋]Function.prototype.* - koyachiの日記

    javascriptはFunction.prototypeに追加したメソッドで元の関数の挙動を変更することができる。 later 最速インターフェース研究会 :: Function.prototypeを拡張して遅延実行を実現する 関数の実行を指定時間後に行なう。 var func = function(v){alert(v)}; func.later(1000)("1秒後に警告"); func.later(2000)("2秒後に警告"); func.later(1000).later(2000)("3秒後に警告"); (function(v){alert(v);arguments.callee.later(1000)(v)}).later(1000)("1秒ごとに実行") callTimeout, callInterval Kazuho@Cybozu Labs: setTimeout をオ

    [javascript][抜粋]Function.prototype.* - koyachiの日記
  • steps to phantasien t(2007-01-03) いつもの派閥争いの話

    去年の未読 feed を消化していたら, XML vs JSON という話がぞろぞろ出てきた. 火事と喧嘩は XML の華. 最近ちょっとおとなしかったけれど, たまにはこういうのがないと寂しいよね. 火元は JSON の親玉である Douglas Crockford が XML2007 で行った講演 "JSON, The Fat-Free Alternative to XML" らしい (スライドの ppt) . XML 愛好家の集りで XML でないフォーマットの話をするとは豪胆だ. しかも暗に "おまいらおでぶちゃんとは違うんだぜ" と煽っているわけだから, XML ファンが刺激されるのも仕方ない. まとめ記事によると, 反撃の狼煙を上げたのは Scripting News らしい. でも読んでみるとあんまし JSON をわかってない節がある. 人も自覚があるのか, 議論をうながし

  • Prototype JavaScript framework: Easy Ajax and DOM manipulation for dynamic web applications

    Weblog Prototype 1.7.3 The new bugfix release of Prototype features lots of tiny fixes and one giant change under the hood. A foundation for ambitious web applications. Prototype takes the complexity out of client-side web programming. Built to solve real-world problems, it adds useful extensions to the browser scripting environment and provides elegant APIs around the clumsy interfaces of Ajax an

  • JavaScriptによる全文検索エンジン - llameradaの日記

    JavaScriptでインデックス型の全文検索エンジンを作ってみた。全文検索エンジンを作る際に問題となるのは、インデックスデータを部分的に読み込む方法である。通常はmmapやpreadなどを使ってファイルの一部を部分的に読み込むのだが、もちろん、ブラウザには使えない。ブラウザでファイルの一部分を読み込むには2通りの方法がある。1つは、ファイルを多数のファイルに分割する方法であり、もう1つはHTTPリクエストのRangeヘッダを利用して、ファイルの一部を取得する方法である。前者の利点は、ブラウザのキャッシュが効くことや、対応ブラウザが多いことである。後者の利点は、ファイル数が少なくなるので、インデックスの管理が容易になることである。今回はRangeヘッダの実用性にも興味があったので、後者の方法を用いた。 参考ページ:最速インターフェース研究会 :: Ajaxを使ったシンプルなチャット 転置イ

    JavaScriptによる全文検索エンジン - llameradaの日記
  • 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を

  • Firebug Lite をブックマークレット化しました - WebOS Goodies

    WebOS Goodies へようこそ! WebOS はインターネットの未来形。あらゆる Web サイトが繋がり、共有し、協力して創り上げる、ひとつの巨大な情報システムです。そこでは、あらゆる情報がネットワーク上に蓄積され、我々はいつでも、どこからでも、多彩なデバイスを使ってそれらにアクセスできます。 WebOS Goodies は、さまざまな情報提供やツール開発を通して、そんな世界の実現に少しでも貢献するべく活動していきます。 ご存知の方も多いかと思いますが、先日 Firefox 用 Web 開発ツールの代表格 Firebug の 1.0beta がリリースされました。それはそれで嬉しいニュースですが、さらに素晴らしいことに機能限定(というかログ表示とコンソールのみ ^^;)ながら Firefox 以外のブラウザーでも動作する Firebug Lite も同時に公開されました。 Oper

  • フォームの入力エラーを吹き出しで教えてくれる JavaScript

    ■ フォームの入力エラーを吹き出しで教えてくれる JavaScript フォームの validation 関連のライブラリはいくつかありますが、私は以下に紹介するやつをずっと使ってまして、これがかなり気に入ってます。ただ、オレナイズされたコードが随所に含まれていたから紹介する事が出来ないでいたのですが、今回やっと書き直したのでお目見えです。 AJAX を使ってサーバサイドと連携、とかそういう事も全くやってなくて、普通に JavaScript のみで入力のチェックをしてるだけなんで、真新しい事はないんですが。 実際の動作サンプル とりあえず submit ボタンを押せば、全て理解出来るかと思います。 今回は CSS のファイルと画像のファイルといっぱい出来てきてしまっていて、いつもの「読み込ませるだけ」とはちょっと毛色も違い、使うのには事前の準備が必要で面倒です。 いつもの JavaScri

  • knallgrau | ColorPicker

    Color PickerThis Color Picker was inspired by YUI Color Picker script, but is based on the fantastic script.aculo.us library. NEW: colorpicker.js moved to Google Code. This script provides an easy to use and integrate HSV color picker. see the DEMO or just download (VERSION 0.9) it (includes prototype and script.aculo.us) How to implement it include the javascript files in your HEAD link th

  • JavaScript でソートアルゴリズムを可視化 - bkブログ

    JavaScript でソートアルゴリズムを可視化 JavaScript でソートアルゴリズムを可視化するプログラムを書いてみました。元ネタは Jon Bentley による ソートアルゴリズムを可視化する Java アプレットです。 アルゴリズム 要素数 動作確認は Firefox 2, IE 7, Opera 9 で行いました。要素数は最大で200まで選べますが、かなり重くなるので遅いマシンで実行すると危険です。 English version is also available. ソースコード: sort-animation.js 解説 X軸が配列の添え字、Y軸が配列の要素の値を示しています。最初に要素がランダムに並んでいる配列 (値に重複なし) を作って、それを各種のソートアルゴリズムでソートする様子をアニメーションで表示します。 ただし、要素のあらゆる変更に対して毎回表示を更新し

  • 煤 - Note : Creammonkey でJSONP を使ってドメインを越えてみる

    Creammonkey でJSONP を使ってドメインを越えてみる Sun, 11 Feb 2007 23:30 @645 /coding del.icio.us hatena clap! Safari 版GM であるCreammonkey にはGM_xmlhttpRequest 相当のメソッドがありません(XHR は使えるけどドメイン越えできない)。デバッグ中にそのことを思い出して、試しにJSONP で代用してみることに。普通に行けた。 作ったやつを置いときます。前作ったassociate this をSafari で動くように作り直しました。Safari 2.0.4 + CM 0.8、Fx + GM 0.6.7.20070131.0 で確認。そのまま使うと僕がログ取れちゃったりするので、テスト以外で使う場合は自分でその辺どうにかした方がいいよ。 ちなみにいじってて気付いたのですが、

  • papervision3d.org - contact with domain owner | Epik.com

    This domain name registration has expired. If you are the domain owner, please contact support@epik.com to get the renewal taken care of.

    papervision3d.org - contact with domain owner | Epik.com
  • UTF-8文字列を圧縮されたUTF-8文字列に変換するライブラリ u-lzss - llameradaの日記

    UTF-8文字列の圧縮ライブラリを作っている。いまさら圧縮ライブラリをなぜ作るのかというと、JavaScriptによる全文検索エンジンで、インデックスの圧縮を行いたいからである。検索結果に概要文を出すには、インデックスが元テキスト全てを含む必要がある。従って、インデックスサイズの肥大化を避けるには、圧縮が必要不可欠である。ところが、次の条件を満たすライブラリを見つけられなかった。 圧縮後のデータがUTF-8文字列 JavaScriptで復元可能 前者の条件が必要なのは、JavaScriptでバイナリが扱えない為、圧縮後のデータがUTF-8文字列である必要がある為である。後者の条件は当たり前であるが、意外に該当するライブラリは少なかった。JavaScriptによるzipの解凍ライブラリは公開されているが、ライセンスが不明であった。 しょうがないので、LZSS符号をベースに、自分でライブラリを

    UTF-8文字列を圧縮されたUTF-8文字列に変換するライブラリ u-lzss - llameradaの日記
  • 絵を描いて学ぶ・プログラマのためのラムダ計算 - 檜山正幸のキマイラ飼育記 (はてなBlog)

    JavaScriptで学ぶ・プログラマのためのラムダ計算」は、1回では述べ切らなくて、一段落付いたところで区切りました。これはかえって良かったですね、ブックマークやトラックバックでフィードバックが得られたので。 そのフィードバックなどをかんがみて、「残り=次回の話題」として予告した内容とはい違ってしまうのだけど、今回は、文章では伝わりにくい(前回うまく伝わらなかったと思える)ラムダ計算の大事なツボを、なんとか表現してみようと思います。 [このエントリーの内容はだいぶ前にほぼ出来上がっていたのだけど、ココに書いてある事情で、“お絵描き”がなかなか出来なかったのです。] ※印刷のときはサイドバーが消えます。 内容: 知っていて損はない 計算は身体的に理解しよう ラムダ項のツリー表示:準備 ラムダ項のツリー表示:描く! β変換に対応するツリーの描き換え もっとβ変換をやってみよう 計算現象を

    絵を描いて学ぶ・プログラマのためのラムダ計算 - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • Comet接続のJSONP - snippets from shinichitomita’s journal

    Cometで複数同時コネクション数制限を回避するための、JSONP以外の回避方法(IFRAME+XHR)について書いてあったのだけど、 http://labs.cybozu.co.jp/blog/kazuho/archives/2007/02/keeping_comet_alive.php この中のスライドの10枚目に、JSONPがつらい理由?として「セキュリティリスク or パフォーマンス劣化」というのがあって、セキュリティリスクはわかるけど、パフォーマンス劣化は何を指してるのだろう??純粋にちょっと分からなかった。 まあそれはいいとして、自分の知る限り、複数のCometセッションが必要な場合にJSONPが適切でない最大の理由は、動的JavaScriptロードの評価順序がブラウザによって違うというところなんじゃないかなと思う。例えばFirefoxではscript要素を追加実行した順番にス

    Comet接続のJSONP - snippets from shinichitomita’s journal
  • JavaScriptでの独自右クリックメニューライブラリ作った - spiritlooseのはてなダイアリー

    さて、たまにはJavaScriptでも。 JavaScriptで独自の右クリックメニューを簡単に使うライブラリ作った。 http://spiritloose.net/misc/popupmenu/ デザインはlivedoor Readerから頂きました。 var popup = new PopupMenu(); popup.add('メニューに表示するテキスト', function(target){ // なんか処理 }); popup.addSeparator(); // セパレータ追加 popup.bind('targetElement'); popup.bind(); // document がターゲット こんな感じで使える。 jsファイルひとつでよくて、メニューのHTML書く必要はない。スクリプトのみでOK。 CSSファイルとか、他のライブラリとかも不要。 その分デザイン変えるため

    JavaScriptでの独自右クリックメニューライブラリ作った - spiritlooseのはてなダイアリー