此下拉脚本适用于在 div 上使用不同 ID 的多个下拉列表:
HTML:
<div class="box">
<div id="label_1" class="title">Title</div>
<div id="drop_1" class="dropdown">
Content
</div> <!-- md -->
</div> <!-- ms -->
<br><br><br>
<div class="box">
<div id="label_2" class="title">Title</div>
<div id="drop_2" class="dropdown">
Content
</div> <!-- md -->
</div> <!-- ms -->
jQuery:
$(document).ready(function () {
$(this).on('click',".box, .box div", function (e) {
e.stopPropagation();
var id = this.id.replace('label_', '');
if ($("#drop_" + id).is(":hidden")) {
$('.title_active').siblings('[id^=drop_]').hide();
$('.title_active').removeClass("title_active");
$("#drop_" + id).show();
$(this).addClass("title_active");
$(this).parent().addClass("ms_active");
} else {
$("#drop_" + id).hide();
$(this).removeClass("title_active");
}
});
});
“问题”是页面上预期的下拉菜单/选择框更多,因此使用 ID 变得混乱(对于许多不同的 ID)。
问题:是否有某种方法可以让此脚本仅显示/隐藏 div 的同级".box"
div?那么每个下拉框都不需要唯一的 ID 吗?