这是我的HTML代码。
这是一个在单击时填充下拉列表的代码。我想在我的网页上重复100次,而不想复制代码并为每个条目更改类名或ID。我记得有一些“ .this”类型的函数可以实现这一点,但我不知道如何使用它。另外,我有一些包含此列表的动态帖子,因此它的JS不能在每个新条目上重复。
请建议对这个代码进行如何更改,以便我可以在每个条目中使用“.dropdown”类,而不重复JS代码,并且它只会打开被点击的下拉列表。
<dl id="sample" class="dropdown">
<dt><a href="#"></a></dt>
<dd>
<ul>
<li><a href="#">News</a></li>
<li><a href="#">Jobs</a></li>
<li><a href="#">Community</a></li>
<li><a href="#">Events</a></li>
<li><a href="#">Advisory</a></li>
<li><a href="#">People</a></li>
<li><a href="#">Universities</a></li>
<li><a href="#">HR Intellegence</a></li>
<li><a href="#">Companies</a></li>
<li><a href="#">Inbox</a></li>
<li><a href="#">Notifications</a></li>
</ul>
</dd>
这是 JavaScript 代码
$(document).ready(function() {
$(".dropdown img.flag").addClass("flagvisibility");
$(".dropdown dt a").click(function() {
$(".dropdown dd ul").toggle();
});
$(".dropdown dd ul li a").click(function() {
var text = $(this).html();
$(".dropdown dt a span").html(text);
$(".dropdown dd ul").hide();
});
function getSelectedValue(id) {
return $("#" + id).find("dt a span.value").html();
}
$(document).bind('click', function(e) {
var $clicked = $(e.target);
if (! $clicked.parents().hasClass("dropdown"))
$(".dropdown dd ul").hide();
});
$("#flagSwitcher").click(function() {
$(".dropdown img.flag").toggleClass("flagvisibility");
});
});
这是一个在单击时填充下拉列表的代码。我想在我的网页上重复100次,而不想复制代码并为每个条目更改类名或ID。我记得有一些“ .this”类型的函数可以实现这一点,但我不知道如何使用它。另外,我有一些包含此列表的动态帖子,因此它的JS不能在每个新条目上重复。
请建议对这个代码进行如何更改,以便我可以在每个条目中使用“.dropdown”类,而不重复JS代码,并且它只会打开被点击的下拉列表。