这里是初学者。因此,对于我的类.active
我在CSS中将顺序设置为-1,使其成为顶部的div。它正确地删除了类,但我假设前一个active的顺序仍然是-1
const divs = document.querySelectorAll('.div');
toggleActive = () =>
{
if (this.classList.includes("active"))
this.classList.toggle("active");
else
{
divs.forEach(x => x.classList.remove("active"));
this.classList.toggle("active");
}
}
divs.forEach(x => x.addEventListener("click", toggleActive));
基本上我有:div1 div2 div3 div4 div5,如果用户点击其中一个,结果应该是div4 div1 div2 div3 div5
再次单击应该得到div2 div1 div3 div4 div5,但我得到的是div4 div2 div1 div3 div5
CSS:
.active
{
order: -1;
}
如果你想继续使用你的代码,你需要按照下面的方式来做。
const divs = document.querySelectorAll('.div');
function toggleActive() {
if (this.classList.contains("active"))
this.classList.toggle("active");
else
{
divs.forEach(x => x.classList.remove("active"));
this.classList.toggle("active");
}
}
divs.forEach(x => x.addEventListener("click", toggleActive));
说明:
>
您不能使用箭头函数来绑定“this”,因此您需要使用正则函数来绑定“this”。参考链接,你能在箭头函数中绑定“this”吗
您需要使用contains
而不是includes
。
我已经添加了代码片段,这样它可能会对您有所帮助。
null
const divs = document.querySelectorAll('.div');
function toggleActive() {
if (this.classList.contains("active"))
this.classList.toggle("active");
else
{
divs.forEach(x => x.classList.remove("active"));
this.classList.toggle("active");
}
}
divs.forEach(x => x.addEventListener("click", toggleActive));
.active
{
order: -1;
}
div.active{
color: darkgray;
}
<div class="div">
1. One
</div>
<div class="div">
2. Two
</div>
<div class="div">
3. Three
</div>
我正在寻找一种方法,显示一个div时,一个锚点被点击。我在我的页面上有一个HTML5/PHP表单,当提交时,它会将用户带着一条谢谢消息带到div中放置的锚,这是激活该链接的唯一方法。这是我试图显示的div: 当锚点处于活动状态时,是否有一种方法可以改变(可能使用CSS)显示:none?
我是Kafka的初来乍到,有一些基本的怀疑。我试着做一个Kafka建立的多节点(主动-主动)。情况如下:- 运行单个zookeeper(端口:2181) 创办了三家Kafka经纪人(9092、9093、9094) 创建单个主题测试(分区:1,复制3) 使用代理列表启动生产者(9092,9093) 在9092、9093、9094上启动了使用者,但它们都在使用相同的主题。 现在我怀疑的是,当我从生产者
那么我应该做些什么来实现这个目标呢?如有任何帮助/线索,请提前感谢
我正在Android上使用Firebase云消息。 当应用程序位于前台时,我可以成功接收通知和数据消息 文档说明,如果在应用程序处于后台时收到通知消息,则Firebase将代表应用程序向系统托盘发送通知。这对我不起作用 如果发送了数据消息且应用程序位于后台,则会成功调用onMessageReceived方法 最麻烦的情况是,我强制停止应用程序,然后尝试发送通知或数据消息。在这种情况下,不会调用on
我正在寻找实现这一点的一般设计: 我想注册到ActivityRecognition API,以便在此API不时调用的IntentService中接收定期更新,而我的应用程序中的所有其他内容都是完全非活动的(这里的目标是避免耗尽设备上过多的电池电量)。 问题是,通过新的ActivityRecognition API设计,它与GooglePlayServices客户端绑定,例如: 从逻辑上讲,如果创建
问题内容: 从MDN for NodeList: 在某些情况下,NodeList是一个实时集合,这意味着DOM中的更改会反映在集合中。例如,Node.childNodes处于活动状态: 在其他情况下,NodeList是静态集合,这意味着DOM中的任何后续更改都不会影响集合的内容。document.querySelectorAll返回一个静态NodeList。 所以....有点烦!是否有任何关于哪些