Я использую плагин Rokbox на основе mootools на одном из моих сайтов и не могу понять, как закрыть его с помощью javascript.
Я вызвал событие щелчка на кнопке закрытия, но это не сработало.
Я нашел код в исходнике rokbox, который используется для добавления прослушивателя кликов
this.closeButton.addEvent('click',function(e){new Event(e).stop();self.swtch=false;self.close(e)});
но так как он минифицирован, я не могу найти, к чему это относится



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


this, вероятно, относится к экземпляру rokbox; Я не думаю, что вам нужно об этом беспокоиться, вас интересует код, который запускается при событии щелчка. Важнейшая часть выглядит следующим образом:
self.swtch=false;
self.close(e);
self, скорее всего, снова относится к экземпляру rokbox, поэтому, если вы создаете его с помощью чего-то вроде
var rokbox = new RokBox(...);
у тебя должна быть возможность просто вызвать
rokbox.close();
и имейте это близко. Я не смотрел исходники rokbox, поэтому никаких гарантий и не совсем уверен, что делает swtch=false, поэтому вам, вероятно, придется немного поэкспериментировать.
Для текущего rokbox и mootools 1.12 команда:
window.parent.rokbox.close(null)
на то, чтобы придумать это, ушла целая вечность. Кстати, это закрытие рокбокса со страницы, загруженной в рокбокс, например, нажав обычную кнопку вместо «х». Кроме того, чтобы добавить к тому, что написал Aeon, автоматически создается rokbox, поэтому нет необходимости создавать его экземпляр.
к сожалению, теперь я обнаружил, что это не работает в бэкэнде администратора, потому что rokbox-config выполняет "var rokbox = new RokBox ({" где в интерфейсе, это "rokbox = new RokBox ({" без 'var', чтобы rokbox имел глобальную область видимости.