Добрый день, присвоев полю html ссылку на сайт(например https://www.svyaznoy.ru/catalog/phone/225/xiaomi) мы добьемся что в мобильном приложении у нас будет отображаться web страница этого сайта. есть ли возможность взаимодействовать с действиями пользователями? задача передовать обратно в 1С товары которые пользователь добавляет в корзину, Сайт написан на битрекс. или необходимо полностью код сайта реализовать в 1С чтобы взаимодействовать?
(1) Установи на элемент формы "Поле HTML документа" обработчик события "ПриНажатии" и посмотри в отладке, что передается в ДанныеСобытие этого обработчика при нажатии на что-либо (на странице)
(1) Установи на элемент формы "Поле HTML документа" обработчик события "ПриНажатии" и посмотри в отладке, что передается в ДанныеСобытие этого обработчика при нажатии на что-либо (на странице)
//Для начала создадим элемент посредник на html страницу с Id"77"
|<sc ript type='text/javascript'>
|var evtObj = document.createEventObject(); //Отлавливаем нажатие и принимаем параметр из кнопки
|function f(param){
|document.getElementById (""77"").TextContent = param; //Устанавливаем в элемент посредник парамтер из нажатой кнопки
|document.location.href =param;
|}
|<input type=""button"" value=""Go"" id =""555"" on click=""f('васяпупкин')"" /> //Нажимаем кнопку
&НаКлиенте
Процедура Поле1ПриНажатии(Элемент, ДанныеСобытия, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
#ЕСЛИ МобильноеПриложениеКлиент ТОГДА
Сообщить( ДанныеСобытия.document.getElementById("77").TextContent); //считываем Текст Контекст у элемента посредника и видим "кто был нажат"
#КОНЕЦЕСЛИ
КонецПроцедуры
(3) а почему именно в мобильном приложении срабатывает только событие по нажатию на ссылку(переход в меню и подменю), а например событие "добавить в корзину" не срабатывает, хотя если отлаживать с компа то все события срабатывают
(4)Потому что в мобильной платформе все урезано по максимуму по сравнению с обычной платформой.
Запустите отладку в обычной платформе и МП, и посмотрите что содержится в ДанныеСобытия в одном случае и в другом.
Проще говоря в случае с мобильной платформой ДанныеСобытия будет пустым.
Конечно код который я привел является костылем на колесиках и я надеюсь что 1С допилит это дело по человечески.
Ну а пока работает и ладно. и на том спасибо.
(5) так я не пойму вам удалось отловить событие на нажате кнопки на сайте? у меня в мобильной платформе срабытавает только событие по переходу на другую страницу сайта(навигация по ссылке)
(6)Именно так! но вся идея в том.что бы ссылка вела в никуда, фейковая короче.
click=""f('васяпупкин')""
...
document.location.href =param
...
Вася Пупкин ведет в никуда, однако нажатие на ссылку есть.
(7)Идея в том, что бы пережать инфу посреднику что нажато:document.getElementById (""77"").TextContent = param;
А его уже прочесть из 1С: ДанныеСобытия.document.getElementById("77").TextContent
Вы просто попробуйте код запилить в конфу и увидите
(7)Я вот только что обратил внимание на это: или необходимо полностью код сайта реализовать в 1С чтобы взаимодействовать? Вы имеете отношение к Связному? Если у вас есть возможность изменять там что то, то сделайте просто веб или http сервисы, которые позволят покупателю через МП делать заказы. И не надо ни какого html в данном случае
(12) связной для примера, доступ к сайту есть, все успешно реализовали на стороне сайта, а в 1С я просто установил "стандартная обработка = ложь", что бы не было перехода на пустую страницу. Спасибо вам