Я использую следующий код для перемещения вниз по меню вверх. Все идет хорошо, пока я не нажму кнопку снова, чтобы переместить меню вверх, тогда как оно снова и снова покачивается.Обработчики событий, конфликтующие друг с другом
$(function() {
$('.login-btn, .lang-btn').on('click', function(event){
var btn = $(this);
$(document).on({
mousedown: function(e) {
btn.children('ul').slideUp();
},
scroll: function() {
btn.children('ul').slideUp();
}
});
btn.children('ul').slideToggle();
event.stopPropagation();
});
});
ul {
list-style:none;
}
.btn {
margin:0 20px 0 0;
background:#ddd;
padding:5px 10px;
border-radius:4px;
cursor:pointer;
float:left;
position:relative;
}
.btn ul{
position:absolute;
top:100%;
width: 290px;
padding: 20px 30px;
display: none;
height: 370px;
overflow: hidden;
background:#666;
color:#fff
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li class="btn login-btn">
Sign In
<ul>
<li>Some stuff here</li>
</ul>
</li>
<li class="btn lang-btn">
English
<ul>
<li>English</li>
<li>French</li>
</ul>
</li>
</ul>
Есть ли что-то не так в моем коде ?!
Можете ли вы просто проверить после выполнения приложения, сколько раз функция функции щелчка была создана, потому что две проблемы могут быть проблемой, так как в моем случае есть одна и та же проблема, я просто проверил ее и удалю ту же функцию, что и приходит дважды и использует только одно с другой страницы. –