タグ

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

  • 関連タグはありません

タグの絞り込みを解除

JavaScriptとJavascriptとjavascriptに関するtotonのブックマーク (766)

  • Javascript で実装した Ruby インタプリタ JSRuby 0.1 リリースしました。 (nakatani @ cybozu labs)

    « MyMiniCity 日語化 | メイン | JSRuby から jQuery を使う ( Javascript 連携 ) » Javascript で実装した Ruby インタプリタ JSRuby 0.1 リリースしました。 あけましておめでとうございます。 1月からサイボウズ・ラボのオフィスが引っ越しました。新年から気分も新しくぶりぶり仕事します。よろしくです。 というわけでちょっとずつ作っていました Javascript で実装した Ruby インタプリタの "JSRuby" を一区切り付けるべくバージョン番号を付けてリリースしました。 JSRuby Project Page (CodeRepos) http://coderepos.org/share/wiki/JSRuby JSRuby Test Page https://labs.cybozu.co.jp/blog/nak

  • 2007-10-13 - 技術日記@kiwanami JavaScriptで b-tree

    導入 ある日突然、JavaScript上で高速に追加・削除が行えて爆速で最小値を検索できる入れ物が欲しくなった。 普通(JavaとかFORTRANとか)ならここで素直に b-tree の実装に入るのだけども、JavaScriptは例によって変態言語なので、実は面倒なことせずにArrayに普通に入れて、素直にソートとか線形探索したほうが速いのかもしれないという疑問を持った。 しかも「最近全然技術日記してない」という突込みが入り、ついカッとなってベンチマークをとってみた。*1 調べ方 以下の3つの入れ物を実装。適当な実装を探してみたが、あまりいいものが無かったので車輪の再実装。 BTree 素直にb-treeを実装。速度よりは読み書きしやすさ優先。スペック通りなら、追加・削除、値の探索が高速。 SortedList 配列を常にソートしておいてb-searchで値探索、spliceで追加・削除。

    2007-10-13 - 技術日記@kiwanami JavaScriptで b-tree
  • テキストエリアでリターンキーを押した際に、submitイベントの発生を抑止する方法 - Enjoy*Study

    テキストエリアでのリターンキーで、submitイベントが発生しないようにする場合、ブラウザ毎にどのような処理を書けばいいのか調べてみました。(submitイベント自体に処理を追加せずに、テキストエリアでのイベントで制御したかったので) テキストエリアでのリターンを拾えるイベントとしては、下記の3つがあります。 keypress keydown keyup イベントをキャンセルする方法は、IEのJScriptの実装と、DOM 2のEventモデルでの実装である下記の2パターンを試しました。 event.preventDefault() event.returnValue=false そして確認の結果、上記のイベント×キャンセル処理の組み合わせでsubmitイベントがキャンセル出来るのは、下記のパターンとなりました。 IE 6 keydown - event.returnValue=false

    テキストエリアでリターンキーを押した際に、submitイベントの発生を抑止する方法 - Enjoy*Study
  • javascript - event.target で IDを省略 : 404 Blog Not Found

    2006年09月22日02:30 カテゴリLightweight Languages javascript - event.target で IDを省略 DHTMLの世界では、DOM objectにはみんなIDをふっておいて、document.getElementByID(id)でobjectを取得してそれをいじくるというのが王道ですが、いじくる対象がイベントを発生させたobject自身しかないならIDは省略できるいうお話。 よくあるのは、 function foo(id){ // あるいは // function $(id){ return document.getElementById(id) } // を定義しておいて$(id)を使う var elem = document.getElementById(id); // ... } とやってから <a href="#" id="bar

    javascript - event.target で IDを省略 : 404 Blog Not Found
  • JavaScript大域変数の存在確認 - 檜山正幸のキマイラ飼育記 (はてなBlog)

    [追記]id:zorioさんのブックマークコメントの指摘により、抜けていた「.apply」を挿入しました。[/追記] JavaScriptで、大域変数(大域オブジェクトのプロパティ)fooが存在しないときに何かをしたいとしましょう。例えば、こんな書き方をしますよね。 if (!foo) { // 何か } でも、式 !foo は、fooがnullでもfalseでも0でもtrueに評価されます。 if (foo == undefined) { // 何か }としたほうがよさそうです。が、null == undefined もtrueとなるのであまり改善されてません。 if (foo === undefined) { // 何か }イコールが3つなら、厳密に「fooが未定義値であるとき」を表現します。ここで、undefinedはリテラルではなくて、仕様として事前に定義されている大域変数です。u

    JavaScript大域変数の存在確認 - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Timer系のデバック方法を考えてみた。 - 考え得る最高を常に行う

    setTimeoutやsetIntervalで関数を実行するとthrowされた値がキャッチできない。そこで下記のように関数を上書きするだけでthrowがキャッチできる。(console.errorは javascriptのデバック方法に依存するのでお好みのコードに置き換えて使えばOK) 使い方 catchした後の処理はお好みのコードに差し替え。 できるだけ早く以下のコードが実行されるようにする。 あとは、いつも通りのコーディングでOK. (function(){// debug. // setTimeout var _setTimeout=window.setTimeout; window.setTimeout=function( func, ms ){ func = ( typeof func == 'function' )?func:new Function(func); return

    Timer系のデバック方法を考えてみた。 - 考え得る最高を常に行う
    toton
    toton 2007/10/26
    setTimeoutやsetIntervalにAOP的にtry・catchを入れる
  • CodeRepos に nobjdb.js 追加 - 最速チュパカブラ研究会

    http://coderepos.org/share/browser/lang/javascript/nobjdb CodeReposに「nobjdb.js」というファイルを追加しました。これは、「syobocalplus」のタイトル検索のルーチンを抜き出し、ライブラリ化したものです。 オブジェクトの集合の中から、文字列検索の結果によって部分集合を抜いてくる処理…… と言うとわかりにくいですが、要するに 購読しているフィードのリストの中をタイトルで検索する(例: LDR) タグクラウドの絞り込み検索(例: はてブ) などという処理です。これを素朴に実装すると for (var i in list) if (list[i].name.indexOf(keyword) >= 0) { // マッチ! } という感じですが、nobjdb.jsでは、ひとつの文字列にタイトルをすべて突っ込んで、 タ

    CodeRepos に nobjdb.js 追加 - 最速チュパカブラ研究会
  • ハタさんのブログ : Javascriptによる大規模開発の覚え書き

    未だに半年前のエントリにブクマされるみたいなので、もう少しjavascriptについて書いてみる。 今回は大規模化開発におけるJavascriptの注意点とかそういうの。当てはまらない環境の方もいます。(しかも基的な事だらけで大したことは書いてないです) ほぼリッチクライアントを主目的としたjavascripterとコードを対象とします。 どちらかというと、ライブラリを提供する側の視点から 1.ログを出力せよ あなたが書いたコードは遅い、と必ず言われます。なので言われる前から、自分の書いたコードの処理時間をログするようにしましょう。 次のような処理時間を計測するロガーを作ります。 var TraceLog = function (){ this.startTime = -1; var outer = document.getElementById('_outer'); if(oute

  • onerrorでエラーを検出 - VTuberになったプログラマーの魂の残滓

    @nitoyon IE 6 エラーになる?やべー、手元に Windows がないー。ちょっと別のマシン起動してきます。 http://twitter.com/amachang/statuses/191685642 ってのがあったのでonerrorを使ったエラーの検出方法について書いてみたいと思います。 いきなりソースコード var err = function(a,b,c){ var img = new Image(); img.src = 'http://example.com/error.gif?a=' + escape(a) + '&b=' + escape(b) + '&c=' + escape(c); return true; } window.onerror = err; 用意するもの 上のスクリプトをできるだけページの上部に設置 アクセスログを閲覧できる場所に1x1のerro

    onerrorでエラーを検出 - VTuberになったプログラマーの魂の残滓
  • javascriptを拡張機能のコンテキストで実行できる Execute JS - bits and bytes

    先日、ブックマークレットとおんなじくらいお手軽にFirefoxで開いているページの中身をスクリプトに渡して処理したりできないかなーと思って Browse Web and Developer Tools :: Firefox Add-ons を見ていたらFirefoxの拡張機能を作るときに少し役に立ちそうなものを発見しました。 Execute JS という名前のextensionで、説明に # Execute arbitrary (multiline) JavaScript Code in every window you like. # Evaluting the properties of an object. # Modifying functions on the fly i.e. you can search for functions, load and edit them

    toton
    toton 2007/09/17
    XPCOMでネイティブプロセス実行
  • rest/ahah - Microformats Wiki

    AHAH: Asynchronous HTML and HTTP AHAH is a very simple technique for dynamically updating web pages using JavaScript. It involves using XMLHTTPRequest to retrieve (X)HTML fragments which are then inserted directly into the web page, whence they can be styled using CSS. Contributors David Hansson Kevin Marks Ernest Prabhakar Questions Has anyone considered working with browser vendors to have them

    toton
    toton 2007/09/16
    rest/ahah
  • 从 ;’w’;)クゥ~ン(2007-02-13) [Rails] Spinelz タブ表示機能

    一見タブブラウザが頭によぎる名前だが、この prototype.js ベースの JavaScript ライブラリが熱い。というか、「デモ」の「Tab Box」にいきなり感動した!長い間 cool なタブ表示ツールを探していたけど、ようやく自分の要求を満たすものに出会えた気がする。 ● 要求 というのも、タブ表示というか、見栄え系のJS(or CSS)には妙な拘りがあるのだ。その自分ルールは、スロットの4号機のサブ基盤制約に非常に似ていて あれば見た目が綺麗になる (演出が楽しい) 外してもちゃんと動く (メイン基盤へ影響を与えない) という存在であるべきである、という点。当然ながら、JS でゴリゴリやればできるのはわかってるし、CSSだけでもある程度はいけるのだが、ハートを掴むものはこれまでなかった。よくあるのは、タブとコンテンツが離れていたり、事前にタブのエレメントIDを JS で登録し

  • http://buzzurl.jp/user/amachang/keyword/javascript

  • Latest topics > 他の拡張機能やFirefoxの機能を破壊しないための基本テク - outsider reflex

    Latest topics > 他の拡張機能やFirefoxの機能を破壊しないための基テク 宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。 以下の特設サイトにて、単行まんがでわかるLinux シス管系女子の試し読みが可能! « いちばんになりたい Main ISBNコードからAmazonアフィリエイトのリンクを生成するカスタムスクリプト for ContextMenu Extensions » 他の拡張機能やFirefoxの機能を破壊しないための基テク - Sep 04, 2007 拡張機能勉強会の時に焚き付けられた、Text Shadowのコード(textshadow.js)を教材にして拡張機能開発のノウハウを解説していくシリーズ。 JavaScriptでは、普通に宣言した変数や関数はグローバルな物になる。 var name

  • Sjaxを使わないJavaScript Loader - ヒルズで働く@robarioの技ログ

    最新版はこちら → JavaScriptで外部ライブラリを読み込むためのスクリプトをCodeRepos.orgに上げた。 - ヒルズで働く@robarioの技ログ id:amachangさんの社外勉強会の資料 (JavaScript 依存解決手法) - IT戦記を読ませていただきました。 最近作ってみた自作のLoaderについて書きます。 Sjaxだと外部ドメインのスクリプトが読めない。→Sjaxは使わない。 ページの読み込みを早くするために、全てをwindow.onload以降に動かしたい。→document.writeは使わない。 ということで、script要素をDOMで突っ込むことが必要です。しかし、それでは読み込みの完了を待たずに処理が進んでしまうので、今までは「setTimeoutで1000ms後に処理」とか書いていました。外部スクリプトが置いてあるサーバーが落ちていると、読み込

    Sjaxを使わないJavaScript Loader - ヒルズで働く@robarioの技ログ
  • FirefoxのsetTimeoutの実装 - bits and bytes

    Firefoxのソースコードを追っているうちに、たまたま1年遅れで IT戦記 - JavaScript を学ぶ際に一番重要なのに、誤解されがちな setTimeout 系の概念 の裏側がどうなっているかがわかったので、その話を。 タイマーの管理方法 そもそもjavascriptからsetTimeoutを呼ぶと、どういう仕組みで指定した時間後に渡した関数が呼び出されるようになっているのでしょう。Linuxであればsleepのように一定時間後にawakeするという処理は、タイマーリストによって管理されています。カーネルの中にN jiffies(LinuxのOS内時間の単位はjiffyと呼ぶそうです)経過後に実行することリストがあって、カーネルが4msごとに毎回タイマーリストをチェックしてやることがあったときにはそれを実行しています。 FirefoxもLinuxと同じようにタイマーリストみたいな

  • *「ふっかつのじゅもんがちがいます。」 - もっとエレガントにsetTimeoutをメソッド化する方法

    ※追記:あまりにも記事タイトルが適当すぎて我ながら日語でおkと思ったのでタイトルを変えました。 http://labs.cybozu.co.jp/blog/kazuho/archives/2006/12/oo-settimeout.php http://blog.livedoor.jp/dankogai/archives/50714622.html このネタはmalaさんが1年半前に通過した地点なのである程度常識の部類かと思ってました。 でもdankogaiがわざわざやるってことは知らない人も多そうだし、malaさんが同じネタをまたやるようにも思えないので、ついでにLDRに現在使われてるFunction.prototype.laterとかを紹介してみる。 Function.prototype.later = function(ms){ var self = this; return fu

    *「ふっかつのじゅもんがちがいます。」 - もっとエレガントにsetTimeoutをメソッド化する方法
  • ぬねぬねするリスト from 10x10 | web | prog - 氾濫原

    10x10 の右側のヌネヌネが面白いなぁとか思いつつ、なんでフラッシュなんだこのやろうとかなんとか考えてたので Javascript でヌネヌネの部分だけ再現した。んでそのスクリプト。 ホントは 10x10 相当までやろうとしたけどめんどくなりましたとさ。めんどくさくなったってのはなんていうか Gecko でしか見てないっつうことで IE なんかもうめんどいのでいいです。誰か Strict 10x10 作ってくだs とりあえず addEventListener のクロスブラウザ化したら動いた。 トップ web ぬねぬねするリスト from 10x10 トップ prog ぬねぬねするリスト from 10x10

    toton
    toton 2007/09/05
    動きが面白い
  • llameradaの日記 - JavaScript でマルチスレッド・デザインパターン

    JavaScriptでデザインパターンを書いてみる。とはいえ、いまさらFactoryパターンなど書いても面白くないので、マルチスレッド・デザインパターンにする。 もちろん、JavaScriptの言語仕様にスレッドなどない。しかし、ブラウザ環境では実質的にスレッドが存在する。スレッドが発生する場面には2種類ある。1つは、イベントである。例えば、ユーザのクリック動作によってonclickイベントが発生した時、onclickイベントハンドラだけを処理するスレッドが発生するとみなせる。もう1つは、setTimeoutとsetIntervalメソッドである。これらのメソッドでは、一定時間後に、別の処理を実行させるが、この処理は現在の処理と並行的に実行される。つまり、スレッドとみなせる。個人的には、setTimeoutをアニメーションなどの小細工だけに使うのはもったいないと思う。setTimeoutの

    llameradaの日記 - JavaScript でマルチスレッド・デザインパターン