javascript - 在没有 jQuery 的情况下单击时的滑动切换兄弟
问题描述
你好,社区。
我有这个超级简单的小脚本,可以在单击箭头时切换子菜单。
问题是我开发的网站不能使用 jQuery,而且我对纯 Javascript 一无所知。
我正在关注很多答案并尝试将多段代码放在一起,但这似乎超出了我的知识范围。
$('.mobile-submenu-toggler').click(function() {
$(this).toggleClass('rotated');
$(this).siblings('.submenu').stop().slideToggle(300);
});
该网站是用 Angular 制作的,所以我怎样才能将它转换成纯 JS/Angular?
非常感谢您的时间和帮助!
解决方案
尝试这个。
const el = document.querySelector(".mobile-submenu-toggle");
el.addEventListener("click", function(){
el.classList.toggle("rotated");
for (let sibling of el.parentNode.children) {
sibling.classList.remove("stop-animation");
sibling.classList.add("slide-toggle");
}
})
对于“stop”和“slideToggle”,最好的办法是使用 CSS 来模拟。例如,使用转换和/或@keyframes 并简单地将类删除/添加到元素。
推荐阅读
- flutter - 如何修复在布局期间引发了以下断言:I/flutter (9632): A RenderFlex 在底部溢出了 77 个像素。我/颤振(9632):
- flutter - 如何设置TextFormField的文本左边距(不是标签) Flutter
- javascript - 计算器,如何在单击加号后存储一个值并在单击等号后给出总和?
- python - 我想指定文件夹来存储谷歌图片
- git - 从第二个存储库文件在一个存储库中创建分支
- lisp - Hashtable 不保留 Lisp 中的插入顺序
- python - 如何使用 Python 在 Photoshop 中编辑/打开智能对象?
- java - Java 对象字段值取决于其他字段 - 最佳实践模式?
- c++ - 我怎么知道我的代码是否已经编译?
- r - 如何使用 R 获取数据框中每个列对的相关系数?