我对jquery并不熟悉,对此我完全不了解。我找了很多次,但都没有成功。我想做的是:
我在一个区域中添加一个(隐藏的) div到另一个分区,在DOM中增加几个级别:
$(".show_hide").on("click", function(event){
$(this).next(".event-details").appendTo("#sc_events").addClass("current-event");
return false;
});
我的问题是,容器中还有几个div在做同样的事情。因此,我需要能够删除这个附加的div,当单击下一个div时,会弹出新的div。我就是这么干的:
$(".show_hide").on("click", function(event){
$(".current-event").remove();
$(this).next(".event-details").appendTo("#sc_events").addClass("current-event");
return false;
});
但是,如果我单击以前单击的项目w/ show_hide类,它不会返回,因为它已经使用此方法删除了。我只需要它能再次出现。
我希望这是合理的。谢谢你的帮助。这里有一个http://jsfiddle.net/CGySr/,我无法工作,但或多或少具有html结构。
发布于 2013-02-08 22:05:10
您可以使用jQuery的clone()
在追加隐藏的div之前复制它。我还建议在单击链接时使用preventDefault()
来防止潜在的页面跳转或页面刷新。
$(".show_hide").on("click", function(event){
event.preventDefault();
$(".current-event").hide();
$(this).next(".event-details").clone().appendTo("#sc_events").addClass("current-event").show();
return false;
});
见演示。
https://stackoverflow.com/questions/14782043
复制相似问题