Я создал jQuery UI Dialog
и после отображения диалогового окна, где бы пользователь ни щелкнул, оно закрывается.Я добился этого, добавив событие click к тегу body.
$("body").click(function() {
$("#myDialog").dialog("close").dialog("destroy");
});
Он отлично работает, кроме как внутри 3rd party Grid API
Я использую и обнаружил этот исходный код Grid API, он определил событие onclick, как показано ниже:
this.obj.onclick = function(e){
console.log("grid API clicked");
this.grid._doClick(e||window.event);
if (this.grid._sclE) {
this.grid.editCell(e||window.event);
}
(e||event).cancelBubble=true;
};
Когда я щелкаю внутри Grid, в моей файербаге отображается сообщение msg "grid API clicked", но событие щелчка моего тела не запускается, поэтому я думаю, что событие не всплывает до щелчка теласобытие, указанное в строке (e||event).cancelBubble=true;
Если я установлю это значение на false
, щелчок по сетке не будет работать, и не будет необходимости изменять код в стороннем API.
Итак, есть ли обходной путь, чтобы заставить щелчок тела работать?