У меня есть выпадающий список с использованием ul и li:
<img class="options_toggle" src="assets/down_arrow.png"onclick="toggle_display('options');"/>
<ul id="options" class="options_content hide">
<li>
option one
</li>
</ul>
функция options_toggle переключается между классами «hide» и «show» в параметрах ul.Теперь я хочу скрыть это, только когда пользователь щелкает где-нибудь, кроме переключателя опций:
$(document).ready(function () {
document.onclick = function(e) {
// prevent the dropdown from closing instantly when you click the toggle to open it
$(".options_toggle").click(function (e) {
e.stopPropagation();
});
// hide the dropdown
$(".options_content").removeClass("show");
$(".options_content").addClass("hide");
};
});
Но проблема в том, что при первой загрузке страницы они должны щелкнуть где-то один раз, прежде чем нажать на переключатель.После первого щелчка он работает нормально, просто сначала нужно щелкнуть дважды, что может раздражать.
Есть идеи, что он делает, и почему он отменяет или игнорирует первый переключатель?Спасибо.