Я пытался закрыть мой список автозаполнения в JavaScript, если пользователь нажимает где-либо еще, и нашел интересный ответ: Jquery Close autoComplete listJavascript автозаполнения близко с визуальной ошибкой
Поскольку у меня нет опции «showmore», как в оригинальный вопрос, который я приспособил его следующим образом:
$(document).bind('click', function (event) {
$(".ui-menu-item").remove();
});
Однако этот код создают визуальный баг, который вы можете увидеть на следующем скриншоте:
А вот где в коде я добавил блок кода для обработки закрытия автозаполнения: https://github.com/CUTR-at-USF/usf-mobullity/blob/mobullityrebase/src/client/js/otp/widgets/tripoptions/TripOptionsWidget.js#L294
Я попытался изменить .ui-menu-item
к .ui-menu
или .ui-autocomplete
но этим изменился инвалиды возможности открыть список автозаполнения.
Если у вас есть идея, почему это осталось от списка автозаполнения и знаете, как исправить это, дайте мне знать. Я предполагаю, что он исходит от .ui-menu-item
, но я не уверен, и то, что я пробовал, не увенчалось успехом.
вы щелкните правой кнопкой мыши элемент letfover и щелкните элемент проверки (предположим, что хром) и проверьте структуру документа и посмотрите, какой элемент остается (может быть родительским), возможно, вы хотите изменить свой JS-код, чтобы удалить этот элемент. также, просто проверьте, действительно ли вам нужно удалить его, или вы можете просто скрыть его ... –
Почему вы не пытаетесь добавить dsiplay none к элементу? –
@ redflar3 Я сделал это, и поэтому я говорю, что я пробовал '.ui-menu' и' .ui-autocomplete'. Этот тег является тем, который я могу видеть у инспектора на оставшемся элементе. – user1527152