Сообщение от Sergey1986
|
через this все, только вот теперь при выборе элемента из этого меню....она вновь переоткрываеться
|
Все равно не понятно чего хочется. Во-первых почему все таки делегирование обработчика причем прапрадедушке. Во-вторых почему добавляется. Если строится некое меню, то его можно на чистом css сделать.
Допустим, что так надо и это уже есть на странице, тогда:
<div id="menu"><p>Open</p></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script>
$('#menu').click(function(){
$('<ul style="display:none;"><li>111111</li><li>222222</li></ul>')
.appendTo(this) //добавили контент
.slideDown().click(function(e) { //показали его и определили выбор в нем
e.stopPropagation(); //запретили всплытие события
console.log($(e.target).text()); //что-то выполнили по выбору
$(this).slideUp(function() { //спрятали контент
$(this).remove() //удалили контент, правда это будет оправдано если контент различен
})
})
});
</script>