3000の部屋を持つ大規模な建物のフロアプランのためのGoogleマップの構築を想像してください。SVG rect vs div vs canvas
最大3000個の四角形を表示する必要があります(ランダムなポリゴンをレンダリングすることもできますが、現時点では最大の問題ではありません)。それぞれには、マウスオーバーやクリックなどのイベントが添付されている必要があります。このイベントは、ページ上の他のDOM要素に影響を与えます。ズームインとズームアウトができるようにする必要もあります。
私はSVG(Raphael.js)、プレーンdivsレンダリングまたはキャンバスでそれを行うことができます。
ビルドしようとしているものを作るための具体的な推奨事項がありますか?最も遅いブラウザでは、十分速くレンダリングする必要があります(約1秒程度)。 (IE8、Firefox 3.6、うまくいけばIE7、あまりにも夢を見ていないのに...)
Nicolas。
PS:これまでのところ、Raphael.jsを使用したIE8では、3000個の四角形のレンダリングに7秒かかることがありましたが、これはやや遅いです。 IE8では、プレーンDIVをレンダリングするのが最大6倍速くなっているようです。
有用な回答ありがとうございます!しかし、1つのクイックコメント。 IE8とIE7では、excanvasではSVGよりも3000シェイプ(75%は長方形)をレンダリングする方がはるかに高速だったようです。 (excanvasは、SVGより4〜6倍速いplain divを使用した場合と比べて、それらの矩形をレンダリングするのとほぼ同じ速さでした)。あなたがアニメーションやホバー/クリックイベントを追加したり、実際には常に遅くする必要がある場合、それはずっと遅くなると言っていますか?再度、感謝します! –