#jquery #wordpress #wordpress-theming
#jquery #wordpress #wordpress-тематизация
Вопрос:
Я работаю над сайтом WordPress и хочу добавить класс в тело, чтобы он не прокручивался при открытии мобильного меню.
Я совсем новичок, когда дело доходит до jQuery, но после некоторого чтения я подумал, что у меня есть что-то, что должно работать, но, похоже, это не так, и я не могу понять почему. Я также использую bootstrap и их инструмент свертывания. Когда меню открыто, оно добавляет класс ‘show’ к одному из моих divs, и я пытаюсь использовать это условие для добавления класса в тело.
Вот код jQuery, который я добавил :
(function($) {
$(document).ready(function() {
if ( $('#collapseMenu').hasClass('show') ) {
$('document.body').addClass('bodyblock'); }
})
})(jQuery);
И CSS : .bodyblock { position : fixed; }
jsfiddle с приближением того, что кажется мне актуальным здесь: http://jsfiddle.net/bot03eur /
Обычно я пытаюсь разобраться в этом самостоятельно или найти обходной путь, но я в растерянности, любая помощь будет с благодарностью!
Ответ №1:
jQuery нужна только 1 функция, чтобы заставить ее работать.
И ваш селектор не подходит, вам нужно только $ (‘body’) для его таргетинга.
$(document).ready(function() {
if ($('#collapseMenu').hasClass('show')) {
$('body').addClass('bodyblock');
console.log("Class bodyblock added to the body tag");
}
})
.bodyblock {
background-color: grey;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<body>
<div id="collapseMenu" class="show"></div>
</body>