BX.SidePanel.Instance
Класс - основной программный интерфейс для работы со слайдером. Является объектом-синглтоном.
Метод BX.SidePanel.Instance.open
BX.SidePanel.Instance.open( url[, options] )
Метод открывает в слайдере страницу с указанным адресом в параметре url. Возвращает true, если слайдер успешно открылся, иначе false.
Параметры
Параметр | Описание | Тип |
---|---|---|
url | Адрес страницы, которая будет открыта в iframe'е слайдера. Для слайдеров со своим контентом (указана опция contentCallback) в этом параметре указывается уникальный идентификатор. | string |
options | Коллекция опций слайдера. Все настройки являются необязательными.
| Object |
Примеры использования
Пример слайдера со своим содержимым и данными.
BX.SidePanel.Instance.open("crm:activity-view", { //Пробрасываем свои данные в слайдер data: { minRepeats: 30, maxRepeats: 100, repeatString: "==========" }, contentCallback: function(slider) { var promise = new BX.Promise(); //Эмуляция асинхронной операции (как правило, это ajax) setTimeout(function() { //Читаем свои данные var minRepeats = slider.getData().get("minRepeats"); var maxRepeats = slider.getData().get("maxRepeats"); var repeatString = slider.getData().get("repeatString"); var repeats = Math.floor(Math.random() * (maxRepeats - minRepeats) + minRepeats); slider.getData().set("repeats", repeats); //Записываем новые данные var result = "minRepeats: " + minRepeats + "<br>" + "maxRepeats: " + maxRepeats + "<br>" + "repeats: " + repeats + "<br><br>" + (repeatString + "<br>").repeat(repeats) ; promise.fulfill(result); }, 1000); return promise; }, animationDuration: 100, width: 600, events: { onLoad: function(event) { var slider = event.getSlider(); console.log(slider.getData().get("repeats")); //Читаем записанные данные } } });
Открытие слайдера HTTP-методом POST.
BX.SidePanel.Instance.open("/mypage.php", { requestMethod: "post", requestParams: { // post-параметры action: "load", ids: [1, 2, 3], dictionary: { one: 1, two: 2 } } });
Метод BX.SidePanel.Instance.bindAnchors(anchors)
BX.SidePanel.Instance.bindAnchors( anchors )
Метод регистрирует правила обработки нажатия ссылок на странице.
Параметры
Метод | Описание | Тип |
---|---|---|
anchors | Настройки механизма обработки нажатия ссылок.
| Object |
Другие методы класса
Метод | Описание | С версии |
---|---|---|
BX.SidePanel.Instance.isOpen() | Возвращает true, если слайдер отображается на экране. | |
BX.SidePanel.Instance.close([immediately=false]) | Закрывает текущий слайдер на странице. immediately {boolean}Закрыть слайдер мгновенно, без анимации. | |
BX.SidePanel.Instance.closeAll([immediately=false]) | Закрывает все слайдеры на странице. immediately {boolean} Закрыть слайдеры мгновенно, без анимации. | |
BX.SidePanel.Instance.destroy(url) | Уничтожает слайдер на странице. url {string} Адрес страницы или идентификатор удаляемого слайдера. | |
BX.SidePanel.Instance.reload() | Перегружает текущий открытый слайдер. | |
BX.SidePanel.Instance.getTopSlider() | Возвращает текущий открытый слайдер (экземпляр класса [BX.SidePanel.Slider). | |
BX.SidePanel.Instance.getSlider(url) | Возвращает слайдер (экземпляр класса BX.SidePanel.Slider) по указанному адресу или идентификатору. url {string} - Адрес страницы или идентификатор слайдера. | |
BX.SidePanel.Instance.getSliderByWindow(window) | Возвращает слайдер (экземпляр класса BX.SidePanel.Slider) по окну iframe'а. window {Window} - Объект окна iframe'а. | |
BX.SidePanel.Instance.getOpenSliders() | Возвращает список всех открытых слайдеров (массив экземпляров класса BX.SidePanel.Slider). | |
BX.SidePanel.Instance.getLastOpenSlider() | Возвращает закрытый слайдер (экземпляр класса BX.SidePanel.Slider). | Object |
Сообщение не промодерировано, возможны ошибки и неточности.
|
||||
| ||||
Сообщение не промодерировано, возможны ошибки и неточности.
|
||
Также есть метод BX.SidePanel.Instance.createSlider(e, t)
Который возвращает объект слайдера. Удобно, если нужно его создать, но не открывать.
| ||
Сообщение не промодерировано, возможны ошибки и неточности.
|
||||
Параметр customLeftBoundary отвечает за отступ слева от window, если поставить 0 - останется только место под крестик (судя по коду 63px)
При этом важно помнить (!):
| ||||
Сообщение не промодерировано, возможны ошибки и неточности.
|
||
Важно!
Что бы при ошибке загрузки контента слайдер можно было закрыть ТП советует использовать contentCallback:
| ||
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.