Я пытаюсь настроить функцию jquery, которая проверяет ширину окна, чтобы панель навигации работала правильно. Я хочу, чтобы это произошло: если ширина экрана больше чем 949px, инициируйте функцию, которая наводит курсор на ссылку привязки .dropdown, открывает подменю выпадающего меню; если ширина экрана меньше или равна, что 949px, удалите эту функцию, чтобы нажимать ссылку привязки .dropdown, чтобы открыть выпадающее подменю (раскрывающиеся ссылки открываются по умолчанию при нажатии на них - я думаю это компонент начальной загрузки).Функция изменения размера окна jquery запускается только один раз, а не при каждом изменении размера.
Я создал несколько функций, основанных на некоторых похожих примерах, найденных в stackoverflow, но обнаружил, что функция запускается только после того, как ширина экрана превысила 949 пикселей, поэтому при меньших ширинах анкеры .dropdown все еще открывают подменю с помощью наведения, который чего я не хочу.
var width = $(window).width();
$(window).resize(function(){
if($(this).width()>949){
$(".dropdown").hover(function(){
$(this).addClass("open");
},
function(){
$(this).removeClass("open");
});
}
});
Как можно улучшить эту функцию так, чтобы .dropdown функциональные возможности парения добавляют при ширине выше 949px и удалены на 949px и ниже?
Просто хочу, чтобы убедиться: вар а - Ь; Правильно ли это синтаксис или просто опечатка? – elfwyn
Я вижу, что вы добавляете событие hover в поля .dropdown, когда размер больше 949, но разве вы не хотите удалить этого слушателя, когда размер меньше? Я не очень привык к jQuery, но я уверен, что у него есть функции для удаления прослушивателя событий: взгляните на on() и off() – elfwyn
Эй, вы правы, это была опечатка, которая была отредактирована , Я не совсем уверен, как пересмотреть мой скрипт с вашим предложением ... Я думаю, что обе функции (добавление зависания или удаление зависания) зависят от событий «on» изменений. –