2014-10-21 7 views
0

У меня есть элементы списка, и каждый из них содержит небольшую коробку рядом с ней. При нажатии на поле отображается какая-либо информация. Я хочу скрыть поле, если щелчок находится вне поля. Но я точно не знаю, как это сделать. Есть уже несколько сообщений, похожих на этот вопрос, но все они используют JQuery, но я должен получить это сделать, используя чистый JavaScriptобнаружить элемент вне элемента с помощью javascript

I tried to do following way:http://jsfiddle.net/kn8hw4tf/1/

Спасибо

+0

Вы должны слушать 'click' событие на весь' document' – hindmost

+0

Кратчайший решение добавить еще слушателю 'body' и скрыть окно на мыши. –

+0

ссылка на скрипку не работает –

ответ

1

Слушайте щелчки в любом месте на document и реагировать им. Слушайте клики на поле и вызывайте event.stopPropagation(), чтобы они не ударили слушателя на document.

document.getElementById('test_id').addEventListener('click', function getDetails(evt) { 
    var id = this.getAttribute('id'); 
    alert("Clicked on " + id); 
    evt.stopPropagation(); 
}); 

document.addEventListener("click", function (e) { 
    alert("Clicked outside"); 
}); 
+0

есть ли какой-нибудь пример, который я могу с нетерпением ждать или вы можете уточнить немного больше. Спасибо – user596502

+0

Извините, но ваша скрипка имеет так много ошибок и нерелевантных бит, что я не мог понять, что вы пытались сделать точно. Минимальным примером, демонстрирующим концепцию, является [здесь] (http://jsfiddle.net/kn8hw4tf/3/). – Amadan

Смежные вопросы