[ Закрыто ] Кто разобрался с новым шаблоном интернет магазина на 1С Битрикс 14.x ?, Кто разобрался с новым шаблоном интернет магазина на 1С Битрикс 14.x ? Пытаюсь натянуть туда свою вёрстку, что-то не очень получается.
Что-то этот новый шаблон для магазина швах какой-то. Левый недокументированный js. Торговые предложения выводятся именно с помощью js! А по умолчанию php их выводит все (ЗАЧЕМ?) и потом javascript показывает доступные. Я пока этот код разбирал - прослезился. Зачем всё это нужно без документации. На презентации они показывают какой крутой у них демо магазин, но никто же не юзает их демо шаблон в боевых сайтах. Битрикс такой битрикс. Документации как всегда отстой.
Да шаблон крайне не простой, я теперь его стараюсь не использовать, свой JS (Jquery) свой template.php, от поддерки получил копию старого 12-го битрикса со старым магазином, много взял оттуда. Вот может пригодится https://yadi.sk/d/b1xyh5DucCson
Товарищи, приветствую! Прилетела тут мне задача, вывести список всех вариантов товара на страница товара вместе с кнопкой "Добавить в козину" у каждого варианта. С битриксом я не работаю, в основном фронтендом занимаюсь. Как отправлять отдельный вариант товара в корзину я понял (создаем новый объект с данными этого варианта на основе класса JCCatalogElement, а затем рулим им через наследованные методы ) Но вот методы не биндятся на мои кнопки. В моем JS объекте свойство obBuyBtn пустое, хотя должно содержать ссылку на мою кнопку. Может надо это дело ре-инициализировать? з.ы. да, я мог бы сделать типичный bind нужного мне метода на нужную кнопку, но хочется все сделать нативно. з.ы.ы. документацию по всему этому бы.
Станислав Еременко написал: В моем JS объекте свойство obBuyBtn пустое, хотя должно содержать ссылку на мою кнопку.
Евгений Жуков, вам уже ответил, а я ещё посоветую вот такой штукой http://it-svalka.ru/poleznosti/analog-funktsii-php-var-dump-v-javascript.html удобно пользоваться при отладке. Выводите this в функции init класса JCCatalogElement (или любого другого) - получаете коды ошибок (если они есть), по кодам можно понять что ещё "не нашёл" класс JCCatalogElement в вашей вёрстке (поле цены, кнопку купить и т.п.).
Евгений Жуков написал: Указывайте dom-id кнопки + в Вашем варианте реализации еще необходим html для этой кнопки для каждого предложения.
Сама кнопка <button type="button" id="sku123_buy_link" >Добавить в корзину</button> где sku123 собстно имя объекта с данными для конкретного предложения. Метод sku123.visual.BUY_ID:"sku123_buy_link", а sku123.obBuyBtn:null. Если я руками (скриптом в шаблоне) напишу sku123.obBuyBtn = document.getElementById('sku123_buy_link'), то ничего не изменится.
Хм, в общем, obBuyBtn вернул, спасибо. Теперь он указывает на нужную DOM ноду,но обработчиков click на нужной мне DOM ноде не висит.
В window.JCCatalogElement.prototype.Init навешивается этот самый обработчик, но срабатывает он почему-то только для одной главной кнопки, которая изначально есть шаблоне. Будем смотреть дальше.