タグ

2020年11月16日のブックマーク (3件)

  • [DOM] Rangeを作りすぎて激重になった話|TechRacho by BPS株式会社

    DOMの規格にはRangeというクラスがあります。ドキュメント上の選択範囲などを表すのに便利なクラスです。 ついさっき、このクラスにまつわるパフォーマンス問題を解決したので記事に残そうと思います。 removeChild()が重い? とあるDOM操作を行う処理のパフォーマンスが悪い、というチケットが立てられたのが発端でした。 最初にその部分を実装したのが私で、そこまでチューニングをしっかりしていた訳ではなかったのでまあそんなこともあるかな、と思いながらとりあえずパフォーマンス計測を行ってみたところ、appendChild()が実行時間の9割以上を占めているという結果でした。 appendChild()がなんでそんなに遅いんだろう? appendChild()は親ノードの子のリスト末尾に1個ノードを追加するだけの処理です。普通に考えてこれだけではそこまで遅くなるとは思えない。 appendC

    [DOM] Rangeを作りすぎて激重になった話|TechRacho by BPS株式会社
    latena
    latena 2020/11/16
    こんなに遅くなるなんて興味深い。しかしそんなたくさん Range 使うってどんなユースケースだろ。インスタンス使い回せないのかな。
  • Archipelago

    アーキペラゴは、世界共通の規格の大きさであるため輸送しやすく、脱着可能な工法のため、部屋ごと引っ越しでき、生活スタイルに合わせて、増築・減築ができ、周辺環境に合わせて外壁が開閉する、プロダクトスペースです。

    latena
    latena 2020/11/16
    レゴブロックみたいな建築物
  • GitHub - felixfbecker/dom-to-svg: Library to convert a given HTML DOM node into an accessible SVG "screenshot".

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - felixfbecker/dom-to-svg: Library to convert a given HTML DOM node into an accessible SVG "screenshot".