这是我的小提琴:http://jsfiddle.net/SBAE8/
这是我的问题。我有一系列3个项目,最顶层的项目前面是标题,其标题的可见性已被脚本切换。如果用户删除项目1,则显示项目2的标题,然后如果删除项目2,则显示项目3的标题。问题是 - 如果他们首先删除第2项,则会显示第3项的标题,我只想在任何时候为每个标题设置一个标题,并且无论哪个项目位于顶部,它都应该始终是第一个项目的标题。我已经尝试了几种方法来检查删除的项目是否有更高的兄弟,但我似乎无法想出这个。
jQuery(也见上面链接的小提琴):
$(".doDelete").click(function () {
var $el = $(this).closest("div.payload-container");
var id = $(this).attr("id");
// Alert callback (removed from this example)
// Success
$el.next("div.payload-container").find(".headline").toggleClass("hide");
$el.slideUp(200, function () {
$el.remove();
});
});
任何帮助将不胜感激。谢谢!
答案 0 :(得分:1)
您不会先检查是否有任何其他标题可见(或可见)。
我检查回调:
if (!$(".headline:visible").length) {
$el.next("div.payload-container").find(".headline").toggleClass("hide");
}
$el.remove();
slideUp
完成之后的,这不会显示下一个标题。如果这不好,那么你必须检查它是$el
的{{1}}是否可见。
更新:最终工作版http://jsfiddle.net/uE5Ap/2/