javascript - classList toggle(show) 不显示下拉内容
问题描述
我想打开我网站的“购物车”。当它被点击时,会有一个下拉框。它在我的另一个网站上运行良好,我几乎复制了它的正确代码,但它只是没有在这个网站上显示下拉内容。有人可以帮我解释一下吗?
html:
function myFunction(){
document.getElementById("drop").classList.toggle("show");
}
div.icon
{
top:25px;
position:absolute;
right:20px;
float:left;
display:inline-block;
}
div.dropdown
{
position: absolute;
background-color:#F1F1F1;
min-width: 160px;
z-index: 1;
height:215px;
width:400px;
text-align:center;
top:30px;
right:-6px;
}
.dropdown a
{
text-decoration:none;
color:black;
background-color:#E9E9E9;
position:absolute;
width:100%;
bottom:0;
left:0;
padding:13px 0 13px 0;
font-size:11px;
}
.dropdown p
{
position:absolute;
top:100px;
width:100%;
font-size:13.4px;
}
.icon .dropdown::after
{
content: "";
position: absolute;
bottom: 100%;
right: 7%;
margin-left: -5px;
border-width: 5px;
border-style: solid;
border-color: transparent transparent #F1F1F1; transparent;
}
.show
{
display:block;
}
<div>
<div class="icon">
<p class="menu-right" style="color:white;font-size:14px;font-family:Roboto; cursor:pointer;" onclick="myFunction()"><i class="fa fa-shopping-cart" style="color:white;"></i> Cart</p>
<div class="dropdown" id="drop">
<p>Your shopping cart is empty</p>
<a style="color:black;" href="#">CONTINUE SHOPPING <small>></small></a>
</div>
</div>
以上是html代码。购物车在图标类中。我创建了一个购物车 div 和一个下拉 div。单击购物车时,应出现下拉块。
解决方案
看来您的内部元素没有事件侦听器。
一种方法是
function myFunction() {
this.classList.toggle("show");
}
document.getElementById("inner").addEventListener('click', myFunction)
推荐阅读
- kotlin - Corda - 包含该软件包的 CorDapp 不止一个
- r - 如果它们重叠,如何更有效地按组在 ggplot2 中绘制点?
- javascript - 如何使用ajax显示/隐藏div?
- javascript - 使用 vue-cli-service electron:build 构建后的电子黑屏
- java - 重新加载 RecyclerView 不会更新项目
- delphi - Delphi Firemonkey 获取 UTC 时间
- javascript - 使用 Js 更改特定样式的属性
- python - Sklearn SVM 在明显线性可分离的数据集上生成错误的边界线
- r - 在 R 中读取 XML 文件并在节点具有不同长度和内容时创建数据框
- python - 如何在 Python 中更改直方图 Y 轴上的值