2017-01-15 3 views
0

Мне бы хотелось удалить класс css с помощью jquery. У меня есть этот яваскрипта код:Скрыть класс css с помощью jquery

$(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-успехом Так я думал, может быть, чтобы создать новый класс и назовите его .hidden

.hidden { 
    display: none; 
} 

Ап п вставить класс внутри HTML код

<span class="badge badge-success hidden"><div id="datacount"></div</span> 

Я попытался удалить скрытый класс, используя JQuery, но он не работает, может быть, кто-нибудь может мне помочь?

Большое спасибо

+0

So $ (". Hidden"). RemoveClass ("hidden"); не работает? –

+1

Вы попробовали '$ (selector) .removeClass (« hidden »)' –

+0

Привет, я пробовал с removeClass, и он работает, но он не форматирует css правильно, а результат - ужасный значок. – pippo

ответ

0

Используйте style="display: none;", потому что показать и скрыть метод JQuery использует свойство дисплея для отображения и скрытия элементов. Они делают это, применяя его как встроенный стиль.

Встраиваемые стили обычно переопределяют стили CSS, поэтому ваш первоначальный ответ должен был работать, если только вы не установили! Важно или использовали шаблон, который также имел скрытый класс, который имел важное значение.

+0

Привет, он работал просто добавлением

pippo

+0

Ну, если это сработало для вас, то отметьте его принятым –

+0

Привет, да много спасибо :) – pippo

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>

Смежные вопросы