タグ

domに関するkoyhogeのブックマーク (10)

  • リアルな DOM はなぜ遅いのか - steps to phantasien

    これは VirtualDOM Advent Calendar 2014 に勝手に参加する記事です。 あたたかい春の昼下がりのこと、あるブラウザベンダの社内を不穏な噂が駆け巡った。 「React.js なるライブラリ、どうも仮想 DOM というやつのせいで速いらしいぞ」 もうリアルな DOM はお役御免、ブラウザも商売上がったりか・・・。雇用に不安を覚える人(私)がいる一方、 そのアイデアをとりこんでブラウザの DOM を速く出来ないかと考える人たちもいた。 仮想 DOM はなぜ速いのか。誰かのつてを辿って React.js チームにおいでいただき、速さの秘密をテックトークしてもらう。 イミュータブルなデータ構造による単純化、非同期適用による処理のバッチ化、差分アルゴリズムによる副作用の最小化… いくつかのアイデアはブラウザからはどうにもならないが、たとえば非同期化なんかは形は違えどブラウザ

    koyhoge
    koyhoge 2014/12/12
    DOM構築時にブラウザが何をやっているのか。React.jsがどのようにしてその遅さを回避しているのか。
  • Firefox 22(Nightly) で WebComponents の document.register が実装された - hogehoge @teramako

    783129 - Implement the document.register interface method mozilla-central: changeset 123773:871fea464883 カスタム要素が作れるようになった。DOM要素は単にDOM APIを呼び出すだけの存在だったのが、独自のメソッドとかを追加できるようにったわけで、よりオブジェクト指向的にJavaScriptを書けますね! 仕様 Introduction to Web Components Custom Elements サンプルコード 詳細は、テストコードを見たほうが良いかも。 http://mxr.mozilla.org/mozilla-central/source/dom/tests/mochitest/webcomponents/test_document_register.html?force

    Firefox 22(Nightly) で WebComponents の document.register が実装された - hogehoge @teramako
    koyhoge
    koyhoge 2013/03/14
    これはコードがより読みにくくなるきがするなぁ。
  • Facebookアプリを、HTML5でどうしてサクサクにできたのか。Sencha Touch開発チームが用いた3つのテクニック

    Sencha Touchの開発チームがHTML5で高速に動作するFacebookアプリを開発したことを紹介した1つ前の記事 「Facebookのモバイルアプリが失敗した理由はHTML5のせいじゃない。HTML5でサクサク動くFacebookアプリを作って見せたSencha Touch開発チーム」は、非常に多くの読者に注目されました。 この記事で紹介したSencha Touch開発チームのブログ「The Making of Fastbook: An HTML5 Love Story」の後半では、どのようなテクニックを用いて高速なHTML5アプリケーションを実現したのかも紹介されています。 この記事では、その3つのテクニックについてポイントを紹介したいと思います。タイムラインやニュースフィードのようなユーザーインターフェイスを備えたモバイルアプリケーションは、これから広く開発されていくことにな

    Facebookアプリを、HTML5でどうしてサクサクにできたのか。Sencha Touch開発チームが用いた3つのテクニック
  • Modern Syntax

    フェナキストスコープってのは、Wikipediaによりますと、 一般的なフェナキストスコープは、軸に垂直に取り付けられた回転する円板である。円板にはアニメーションのコマに相当する絵が順に描かれており、コマとコマの間にスリットがある。この円板を回転させ、絵を鏡に映し、動くスリットから透かして見る。仮現運動を利用し、スリットを通すことでブレがなくなり、絵が動いているように見えるのである。 というものなのですが、これはまあ以下のビデオを見れば一発で理解できるかと思います。 使用しているマーカーは、パイロットコーポレーションの「ボードマスター極太」だそうです。 右に回転させると棒人間が階段を昇り、左に回すと降りているように見えます。 こういうのって自分でもできそうな気はするんだけど、結局うまくできないんだよなあ。

  • 404 NOT FOUND

    404 NOT FOUND

    koyhoge
    koyhoge 2011/02/18
    寝言にまで出てくる方がすごいw
  • DOM = フレームバッファ - id:anatooのブログ

    この記事はDOM = Frame buffer | Quixey Blogを勝手訳したものです。 もしあなたが大規模なAJAXアプリケーションを書いているなら、このようなコードを書くのを許せるだろうか。 if (jQuery("#file_menu").is(":visible")) { ... } 駄目だ、これは全然良くない。というのも、プログラムの状態の保持をDOMに依存しているからだ。私たちは以下のように主張したい。DOMは木構造を持っているにもかかわらず、あなたのアプリケーションの出力をエンコードするのみであり、セマンティクス(意味論)を持っていない、と。 デスクトップのメタファ デスクトップアプリケーションをプログラミングすることを考えよう。あなたのプログラムはメモリ内のオブジェクトを通じて一連の状態を保持する。もしあなたが現在どのUIエレメントが表示されているかを知りたいならば

    DOM = フレームバッファ - id:anatooのブログ
    koyhoge
    koyhoge 2010/02/03
    言いたいことはわかるが、elementの状態をclassに仕込むことはよくやる。そもそもDOMとして出力するしか無いWebアプリの基板そのものがイケてない件。
  • Simple HTML DOM documentation

    PHP Simple HTML DOM Parser A fast, simple and reliable HTML document parser for PHP. Created by S.C. Chen, based on HTML Parser for PHP 4 by Jose Solorzano. Parse any HTML document PHP Simple HTML DOM Parser handles any HTML document, even ones that are considered invalid by the HTML specification. Select elements using CSS selectors PHP Simple HTML DOM Parser supports CSS style selectors to navig

  • IE8 で実装された Selectors API とは何か? - IT戦記

    はじめに IE8 には Selectors API という新しい仕様が実装されました。 ということで、今後 DOM 操作 API の主流になるであろう Selectors API についてまとめておきます。 Selectors API が使えるブラウザ 2008 年 3 月 6 日現在の一覧 WebKit Build Archives | WebKit (開発版の Safari) Windows | Official Site for Microsoft Windows 10 Home & Pro OS, laptops, PCs, tablets & more (IE8 の Beta 版) Selectors API とは Selectors API とは W3C で定義された仕様です。詳細に関してはこちらをどうぞ 簡単に説明すると getElementsByTagName や getE

    IE8 で実装された Selectors API とは何か? - IT戦記
    koyhoge
    koyhoge 2008/03/06
    CSSセレクタでelementを取得できるAPI
  • AutoPagerizeをFirefox3で動かそうとしたときにつまったポイント - SWDYH

    Greasemonkeyスクリプトを書くひとはこのへんを注意するといいと思います。 ほとんどDOM関連なのでGreasemonkeyに限った話じゃないかも。 異るドキュメントのノードをappendChildしたりinsertBeforeしたい場合は、一旦importNodeをしてから実行する htmlDoc.documentElement.appendChild(fragment)↓ htmlDoc.documentElement.appendChild(htmlDoc.importNode(fragment, true))fragmentがhtmlDocに属していなかったので、htmlDocにimportNodeしてからappendChildするようにした。 参考: Textノードを追加できない - DOSEI日記 http://d.hatena.ne.jp/DOSEI/20071013

    AutoPagerizeをFirefox3で動かそうとしたときにつまったポイント - SWDYH
  • Gecko DOM Reference - MDC

    The Document Object Model (DOM) connects web pages to scripts or programming languages by representing the structure of a document—such as the HTML representing a web page—in memory. Usually, that means JavaScript, although modeling HTML, SVG, or XML documents as objects are not part of the core JavaScript language, as such. The DOM represents a document with a logical tree. Each branch of the tre

    Gecko DOM Reference - MDC
  • 1