我想用jquery删除一个css类。我有这个javascript代码:
$(document).ready(function(){
const datacount = $('#datacount')
const badge = datacount.parent('.badge')
const config = {
url: 'controllers/ctrl_admin_view_notification.php',
success (res) {
if (Number(res)) {
datacount.text(res)
badge.show()
} else {
badge.hide()
}
},
error () {
badge.hide()
}
}
$.ajax(config)
window.setInterval($.ajax, 100000, config)
});
这是我的HTML代码:
<a href="#" class="dropdown-toggle" data-toggle="dropdown" data-hover="dropdown" data-close-others="true">
<i class="icon-bell"></i>
<span class="badge badge-success"><div id="datacount"></div></span>
</a>
它工作正常,但唯一的问题是当我刷新页面如果数据库中没有值我可以看到一个绿色点闪烁一秒钟,我认为它是由类.badge-success引起的 所以我想可能要创建一个新类并将其称为.hidden
.hidden {
display: none;
}
然后在html代码中插入类
<span class="badge badge-success hidden"><div id="datacount"></div</span>
我曾尝试使用jquery删除隐藏的类,但它不起作用,也许有人可以帮助我?
非常感谢
答案 0 :(得分:0)
尝试使用datacount.parent().removeClass("hidden")
https://api.jquery.com/removeclass/
在你的行中
<span class="badge badge-success hidden"><div id="datacount"></div</span>
封闭式代码div
出错。解决它可能是它的问题
正确的格式:
<span class="badge badge-success hidden"><div id="datacount"></div></span>
答案 1 :(得分:0)
使用library mylib;
use mylib.my_package.all;
因为jquery的show和hide方法使用display属性来显示和隐藏元素。他们通过将其应用为内联样式来实现。
内联样式通常会覆盖CSS样式,因此您的初始答案应该有效,除非您设置了!important或者使用的样板也有一个隐藏的类具有!important。