Как переопределить событие закрытия кнопки YUI Panel? - PullRequest
1 голос
/ 26 октября 2009

У меня есть объект панели YAHOO, определенный следующим образом:

profilesDialog = new YAHOO.widget.Panel("profiles_dialog", {
            width: "705px",
            height: "609px",
            fixedcenter: "contained",
            close: true,
            draggable: true,
            zindex: 2,
            autofillheight: "body",
            visible: false,
            constraintoviewport: true,
            modal: true,
            zIndex: 1000
        });

Раздел конфигурации «закрыть: истина» вызывает отображение маленькой кнопки закрытия на панели. Когда вы нажимаете на эту маленькую кнопку, панель скрывается.

Теперь я знаю, что могу подписаться на "beforeHideEvent", и это желательно, но я хочу знать, если внутри этого "beforeHideEvent" выполняются некоторые условия, как мне остановить панель от запуска своего собственного метода close.

1 Ответ

2 голосов
/ 05 января 2010

внутри подписанной функции для beforeHideEvent:

YAHOO.util.Event.preventDefault(event);

и, если вы хотите остановить всплывающее событие для других событий не по умолчанию:

stopPropagation(event)

http://developer.yahoo.com/yui/docs/YAHOO.util.Event.html#method_stopPropagation

также, есть

stopEvent(event)

это сумма stopPropagation + protectDefault.

...