私は自分のページでハイチャートを使用しています。ちょっと重いです。
ユーザーがボタンをクリックすると、ハイチャートが動的に読み込まれ、ユーザーがclose
ボタンをクリックすると、チャートが削除/非表示になります。
どちらがより良い選択肢になるか知りたいです。
ユーザーがクリックしたときにグラフを非表示にしますか?ページの残りの部分の速度が低下しますか(ハンドラーと一緒に重いJavaScriptが存在するため)、または
remove()
これにより、ページが明るくなります(ただし、ここで、ユーザーがボタンをもう一度クリックすると、グラフを再度読み込む必要があります)または、を使用
detach()
して、ハイチャートをリロードすると、より高速に動作しますremove()
(ただし、jQueryハンドラーが常に存在するため、ページが重くなりませんか?)
私はjQueryのドキュメントから知っています、
.remove()メソッドは、DOMから要素を取り出します。要素自体とその中のすべてを削除する場合は、.remove()を使用します。要素自体に加えて、要素に関連付けられているすべてのバインドされたイベントとjQueryデータが削除されます。
.detach()メソッドは.remove()と同じですが、.detach()が削除された要素に関連付けられたすべてのjQueryデータを保持する点が異なります。このメソッドは、削除された要素を後でDOMに再挿入する場合に役立ちます。
一致した要素は、アニメーションなしですぐに非表示になります。これは、.css('display'、'none')を呼び出すのとほぼ同じです。