![](/img/trans.png)
[英]Angular: Check if element has a class and add a class to another element
[英]If element has class add class to another element
不知道我是否做对了。 我有一个在打开和关闭之间切换的菜单。 现在,如果菜单hasClass("open");
我想显示一个按钮hasClass("open");
。 我想一旦去除类class open
走了。
这是HTML部分;
<nav>
<a class="closed"><i class="fa fa-bars"></i>Menu</a>
<ul>
<li>Menu items</li>
</ul>
<div class="close-btn">
<i class="fa fa-times" aria-hidden="true"></i>
</div>
</nav>
HTML可以正常工作,所以它并不是那么重要,重要的是元素是: nav
, a
, closed
。
现在到jQuery部分;
$(document).ready(function(jQuery) {
if ($("nav a").hasClass("open")) {
$(".close-btn").addClass('show-me-the-button');
} else {
$(".close-btn").removeClass('show-me-the-button');
}
});
但这是行不通的。 我已经搜索了stackoverflow,但是所有人都给了我这段代码……不知道为什么它不起作用。 我没有脚本错误...有什么帮助吗?
您仅在初始页面加载时检查类。 您在哪里更改open
课? 您应该将该代码移到该位置。
用户-Oryol是正确的
尝试将代码放入这样的处理程序中:
$(document).ready(function(jQuery) {
$('nav a').on('click', function(e) { // <----------- Click Handler (jQuery)
// Use $(this) to access current clicked element
if ($(this).hasClass("open")) {
$(".close-btn").addClass('show-me-the-button');
} else {
$(".close-btn").removeClass('show-me-the-button');
}
})
});
查看有关jQuery中的Click Handler的更多信息
希望这可以帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.