Мы работаем над инструментом JavaScript, в котором есть более старый код, , поэтому мы не можем повторно -пишите весь инструмент.
Теперь меню было добавлено с фиксированной позицией внизу, и клиент очень хотел бы, чтобы у него была кнопка переключения для открытия и закрытия меню, за исключением того, что закрытие должно происходить автоматически, когда пользователь начинает делать вещи вне меню, например, когда пользователь возвращается на страницу и выбирает что-то или щелкает по полю формы.
Технически это может работать с событием click
в теле
, запускающимся при любом щелчке,
однако в старом коде есть множество элементов, где щелчок событие было обработано для внутренней ссылки, и return false
был добавлен в функцию щелчка, чтобы сайт не продолжал переходить к тегу ссылки href
.
Очевидно, что такая общая функция действительно работает, но не при нажатии на внутреннюю ссылку, где возврат false останавливает распространение.
$('body').click(function(){
console.log('clicked');
});
Есть ли способ принудительно вызвать событие щелчка по телу, или есть другой способ позволить меню исчезнуть, используя какое-то глобальное событие щелчка или что-то подобное?
Без необходимости перезаписывать все другие щелчки в приложении, которые были созданы много лет назад.
Это было бы чудовищной задачей, тем более что я понятия не имею, как бы их переписать без возврата false, но все же не позволяю им переходить к их href
.