Реализация Popover в JavaScript - PullRequest
0 голосов
/ 17 января 2012

Я хочу сделать свой контроль поповера. Большинство проблем, таких как ориентация стрелы, позиционирование поповера и т. Д., Я могу решить самостоятельно. Единственное, в чем я не уверен, как это сделать наилучшим образом, - это как скрыть это, когда пользователь нажимает снаружи. Любая ссылка на хороший пример или советы по внедрению приветствуются.

Ответы [ 3 ]

1 голос
/ 17 января 2012

Я думаю, что лучшим способом было бы привязать обработчик mousedown к document.body и проверить, был ли клик внутри popover.el.

   var popover = Ext.create('Your.Poopover', {/* ... */});

   popover.mon(Ext.getBody(), 'mousedown', function(e) {
     if (popover.isVisible() && !e.within(popover.el))
       popover.hide();
   });
1 голос
/ 17 января 2012

Событие .blur () отправляется элементу, когда он теряет фокус.

1 голос
/ 17 января 2012
document.addEventListener("click", function (ev) {
  hidePopOverIfClickOutside(ev);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...