をそのリーにいくつかのクラス名を与えると、このような何かを行います:
1)$
(aka jQuery
)とCSS3セレクタ使用し、要素のjQueryオブジェクトを取得する:を使用し、要素を削除する
var $element = $("CSS3_selector_for_element");
2) へ
$element.remove();
3)の要素(あなたがそのイベントハンドラを失うことなく、後で戻ってそれを置くことができる、など)を切り離し、detach
を使用します。:3210
$element.detach();
4)を追加するか、移動要素、append
、appendTo
、before
、insertBefore
、after
、insertAfter
、またはおそらく他のいくつか(detach
にあなたはどこか別の場所からそれを移動している場合は、必要はありませんそれが最初)を使用します。
を
$element.appendTo(target);
または
jquery_object_for_target.append($element);
アンカーがクリックされたときに別のリストからアンカーを含むli
の移動の非常に基本的な例:
HTML:
<ul id='first'>
<li><a href='#'>Anchor One</a></li>
<li><a href='#'>Anchor Two</a></li>
<li><a href='#'>Anchor Three</a></li>
</ul>
<hr>
<ul id='second'>
<li><a href='#'>Anchor Four</a></li>
<li><a href='#'>Anchor Five</a></li>
<li><a href='#'>Anchor Six</a></li>
</ul>
のJavaScriptのjQueryを使用して:
jQuery(function($) {
$("a").click(function() {
var $this, li, list, target;
$this = $(this);
li = $this.closest('li');
list = li.closest('ul');
target = list[0].id == 'first' ? '#second' : '#first';
$(target).append(li);
return false;
});
});
Live copy
あなたはli
イベントが最初に、あなたは(HTMLは上記と同じである)特定のリスト内のアンカーを見てdelegate
を使用することができたときにここで把握したくない場合は、次の
jQuery(function($) {
$("#first").delegate('a', 'click', function() {
return moveContainingListItemTo(this, '#second');
});
$("#second").delegate('a', 'click', function() {
return moveContainingListItemTo(this, '#first');
});
function moveContainingListItemTo(element, target) {
$(element).closest('li').appendTo(target);
return false;
}
});
Live copy
たときにどのようなイベントが発生?また、いくつかのhtmlを提供して、あなたのhtmlに類似した問題を説明することができます – Rafay
@Kyle Sevenoaks - あなたが私がした後にすぐに質問をreworded理由奇妙な人々... –
@Neurofluxation、私もあなたが編集したことを知らなかった!申し訳ありません、あなたの方が良かったですか?私はいくつかのHTMLが表示されていないことを知り、質問を分かりやすくしようとしました。 – Kyle