Я пытаюсь удалить событие jquery, когда окно получает> 490. Однако элементы unblind() или off() не деактивируют действие, активируемое, когда окно становится меньше 490 пикселей. Почему это? Кто-нибудь знает какой-либо метод, чтобы вернуть выбор в исходное состояние? Как отключить/отключить событие jQuery при изменении окна
$(document).ready(function(){
$(window).resize(function(){
if ($(window).width()<490) {
$("#shown").unbind().click(function(){
event.preventDefault();
$("body div hidden").toggle('slow');
});
}
else if ($(window).widht()>=490) {
$("#shown").unbind();
$("body div hidden").unbind();
}
});
});
</script>
Что именно вы хотите достичь? –
Было бы намного проще проверить размер окна в самом событии клика, чем постоянно связывать/развязывать обработчики событий. Кроме того, вы можете добиться этого только с помощью CSS с использованием медиа-запроса и 'указателей-событий: none' –
' hidden' selector выглядит подозрительно. Я предполагаю, что это класс или псевдоселектор ': hidden', а не тип элемента. Во всяком случае, ypu лучше следовать совету Rory –