gpt4 book ai didi

javascript - 如何创建动态下拉列表?

转载 作者:可可西里 更新时间:2023-11-01 14:45:44 26 4
gpt4 key购买 nike

这是我的 HTML 代码。

<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>

这是js

$(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 代码,并且它只打开单击打开的下拉菜单。

最佳答案

我为你做了一些东西:

<!DOCTYPE html>
<html>
<head>
<style>
html {
font-family: sans-serif;
}
.dropdown {
display: inline-block;
}
.dropdown dd {
display: none;
box-shadow: 0px 0px 2px 0px #555;
width: 180px;
position: absolute;
margin-left: 1px;
margin-top: 1px;
background-color: #FFF;
}
.dropdown ul {
list-style: none;
padding-left: 0px;
}
dt a {
display: inline-block;
background-color: #1b8be0;
padding: 10px;
color: #FFF;
text-decoration: none;
}
.dropdown li a{
text-decoration: none;
color: #333;
}
.dropdown li {
padding: 6px;
cursor: pointer;
}
.dropdown li:hover{
background-color: #EEE;
padding: 6px;
}
</style>
</head>
<body>
<dl id="sample" class="dropdown">
<dt><a href="#">Menu</a></dt>
<dd>
<ul>
<li><a href="#">News</a></li>
<li><a href="#">Jobs</a></li>
<li><a href="#">Community</a></li>
</ul>
</dd>
</dl>
<dl id="sample-2" class="dropdown">
<dt><a href="#">Menu 2</a></dt>
<dd>
<ul>
<li><a href="#">More News</a></li>
<li><a href="#">More Jobs</a></li>
<li><a href="#">More Community</a></li>
</ul>
</dd>
</dl>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script>
$(".dropdown dt a").click(function(e){
$(this).parent().next().fadeToggle("fast");
});
$(".dropdown dt a").blur(function(e){
if ($(e.target).not(".dropdown ul")){
$(".dropdown dd").fadeOut();
}
});
</script>
</body>
</html>

关于javascript - 如何创建动态下拉列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30690993/

26 4 0
文章推荐: javascript - 使用 JavaScript 禁用 html 按钮不会 POST
文章推荐: java - Hadoop Java 字数统计调整不起作用 - 尝试总结所有
文章推荐: python - 在 Hadoop 上使用 mrjob 启 Action 业时出错
文章推荐: c# - 如何使用 HTMLAgilityPack 访问多个
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com