非表示と削除
DOM 要素、非表示または削除を処理する最良の方法は何ですか? 環境が数回変わる可能性があると仮定します。要素には、クリック コールバックまたはその他のイベント コールバックを含めることができます。
隠れる
何がベストかを隠すとき。ボタンをクリックして複数の項目を非表示にする場合は、1 つずつ非表示にするか、そのための CSS ルールを作成することもできます。
オプション1:
<style>
.superContent{/*...*/}
.superContent.noEdit .occultable{
display:none;
}
</style>
<form class=”superContent” action=”...”>
<label>Name</label>
<input type=”text” />
<input type=”submit” class=”occultable” value=”send”/>
</form>
<button id=”hideAll”>Edit</button>
<script type=”text/javascript”>
$(“#hideAll”).click(function(){
$(“.superContent”).toggleClass(“noEdit”);
});
</script>
もう 1 つのオプションは、目的のアイテムを非表示にすることです (これらは少数または多数の場合があります)。
オプション 2:
<script type=”text/javascript”>
$(“#hideAll”).click(function(){
$(“.occultable”).toggle();
});
</script>
削除する
DOM を変更するには、不要なアイテムを削除して後で再挿入することもできます。
オプション 3:
<form class="superContent">
<label>Name</label>
<input type="text" />
<input id="sendbutton" type="submit" class="occultable" value="send"/>
</form>
<button id="hideAll">Edit</button>
<script type=”text/javascript”>
$("#hideAll").click(function(){
if( $(".superContent").find("#sendbutton").length>0 ){
$(".superContent").find("#sendbutton").remove();
}
else{
$(".superContent").append('<input id="sendbutton" type="submit" class="occultable" value="send"/>');
}
});
</script>
これらはほんの一例です。多数の要素を含む UI を想定しています。最良の選択肢は何だと思いますか?. メモリリークが少なく、パフォーマンスが高いのはどれですか?
要素を削除する kendo-ui のような JavaScript フレームワークがいくつかあります。jQueryUI はアイテムを非表示にすることを好みますが、ウィジェット Tab sortable は、ユーザーが一時的にドラッグしたタブを作成します。