Вопрос по jquery, javascript, html – Функция внутри оператора if также работает вне оператора if [duplicate]

2

Возможный дубликат:

Функция jQuery работает, когда она не должна

пытался заставить это работать в течение нескольких часов, но могуЯ не могу найти решение, поэтому некоторые советы будут высоко оценены! У меня есть функция в пределахif ($window.width() < 1000) оператор, который также работает за пределами этого оператора .. Так, когда ширина окна> 1000 px функция также срабатывает .. Мой вопрос прост .. Почему? Я '

протоколирование' оператор if / else с цветом фона, который работает нормально, при изменении размера меняет цвет назад и вперед .. Когда страница < 1000px правый боковой список должен быть визуально представлен в виде раскрывающегося списка с функциональностью вкладки (та же функциональность, что и в раскрывающемся списке на лифте), и когда страница> 1000 правая сторона должна быть визуально представлена в виде вкладок.

Код

Полноэкранное демо (облегчает прокрутку)

Ну, Феликс Клинг нашел причину. bfavaretto
Спасибо, Феликс Кинг, думаю, я понимаю, что вы имеете в виду, постараюсь найти решение с информацией, которую вы только что дали мне, все еще довольно плохо знакомой с jquery / javascript .. user1901096
Что касается привязки, почему не нормально делать это $ (window) .resize (checkWidth) ;? user1901096
@bfavaretto нажмите на вкладки, измените размер до < 1000px, нажмите на вкладки, которые стали раскрывающимися и измените размер до> 1000px снова .. user1901096

Ваш Ответ

1   ответ
2

При первом открытии страницы в окне размером более 1000 пикселей он устанавливает обработчик события щелчка. Когда вы изменяете его ширину до 1000 пикселей, событие щелчка по-прежнему устанавливается, поэтому оно будет реагировать при нажатии.

Вы можете сделать следующее:

Когда ширина больше 1000 пикселей

$('.schedule li').bind('click', function(){...

иначе (ширина меньше 1000 пикселей) открепите клик.

$('.schedule li').unbind('click');

Я надеюсь, что это полезно.

Привет, user1901096, Да, я переключил значения. Сожалею. Какая часть нет работаешь? Mike Timmerman
Привет, Майк, спасибо за ответ, полезно, чтобы получить меня дальше. Вы меняли значения или я не прав? Это означает, что обработчик связывания должен быть помещен в if (windowsize < 1000) и уберите в> 1000. обновляю скрипку (jsfiddle.net/5f3AF/5 ) но до сих пор не получить его на работу .. user1901096

Похожие вопросы