сообщество!Показать/скрыть информацию наClick
Идея состоит в том, чтобы создать список с обычным списком с текстом, а иногда и с интерактивными ссылками.
Проблема:
Как сделать этот список закрытым только при нажатии кнопки, а не когда пользователь нажимает на любой элемент внутри списка или где-либо на экране.
Fiddle:jsfiddle.net/H2Chj/494/
HTML:
<button data-text-swap="Show" id="trigger">Hide</button>
<div id="drop">
<a href="#">Menu item 1</a>
<a href="#">Menu item 2</a>
<a href="#">Menu item 3</a>
<a href="#">Menu item 4</a>
</div>
Javascript
$(document).ready(function(){
$('#trigger').click(function(event){
event.stopPropagation();
$('#drop').toggle();
});
$(document).click(function(){
$('#drop').hide();
});
$("button").on("click", function() {
var el = $(this);
if (el.text() == el.data("text-swap")) {
el.text(el.data("text-original"));}
else {
el.data("text-original", el.text());
el.text(el.data("text-swap"));}
});
});
тогда почему вы добавите '$ (документ) .click' слушателем, который делает' $ ('# падение') скрыть() '? – wiesion
Его рода дублировали это ... Я пробовал, и он отлично работает - http://jsfiddle.net/H2Chj/505/ http://stackoverflow.com/questions/1403615/use-jquery-to-hide- a-div-when-the-user-clicks-outside-of-it Редактирование: о, только что увидели вторую часть ... да ... присоединяюсь к вопросу выше меня ... если вы не хотите, чтобы это закрыть любой щелчок, удалить событие щелчка документа ... –