Я создал классный блок выбора в Angularjs, все коды работают нормально, без проблем, единственная проблема, с которой я столкнулся, не повезло решить эту проблему:Закройте selectbox при нажатии за его пределами
Пусть говорят ниже мой выбор окно разметки:
<div id="selectBoxContainer" ng-click="isOpen=!isOpen">
<span>Title</span>
<input type="text" ng-model="q">
</div>
<ul id ="selectboxResult" ng-show="isOpen">
<li ng-repeat="r in result">{{r}}</li>
</ul>
до сих пор это работает, и когда я нажмите на эту DIV или любого ребенка его (позволяет сказать, что название элемента), в ул воли показывать и скрывать.
Проблема:
Когда я нажимаю вне этого DIV (в любом месте за пределами) Я хочу, чтобы это выбрать окно будет закрыто (IsOpen = ложь), я знаю, что я должен поймать document.click событие и что-то с этим, но я не уверен, как его использовать.
пытаются использовать потерять фокус 'blur',' focusout' события – Sherlock
http://stackoverflow.com/questions/152975/how-to-detect-a-click -outside-an-element – Hearner
Что-то, о чем нужно подумать: отображает ли ваш блок выбора все функциональные возможности доступности стандартного и работает последовательно во всех браузерах? –