我正在显示 ul >li
中数据库中的组名称它的参数在 <div>
最初是隐藏的。现在使用 jQuery 我只想切换 <div>
但同时想隐藏所有其他人。
我尝试了以下代码,但它在 jQuery 1.7 中不起作用。任何人都可以帮我如何使用.not
或.filter
选择所有以“group”或其他解决方案开头的 div 时?
$("#popupContact").delegate("ul.horizontal_lists li a", "click", function() {
var target_id = $(this).attr('id');
target_id = "divOf" + target_id;
$('#' + target_id).slideToggle("slow");
$('[id^="divOf"]'.not(this)).hide();
}
最佳答案
我认为你的主要问题之一是你搜索 div,但 this
除外。由于 this
是一个 anchor ,我认为这不会起作用
$('[id^="divOf"]'.not(this)).hide();
我认为您正在寻找这样的东西:
var target_id = $(this).attr('id');
target_id = "divOf" + target_id;
$('#' + target_id).slideToggle("slow");
$('div[id^="divOf"]:not("#' + target_id + '")').hide();
最后一行选择 id 以 divOf
开头的所有 div,但不选择 id 为 target_id
的 div,并将其隐藏
关于jquery-selectors - 深入了解 Jquery 选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8722167/