Виджет для ИоБрокер

Вопросы о разработке собственного драйвера или об отладке существующих
Antworten
salambelgorod
Beiträge: 4
Registriert: 21.06.2017, 12:51

Виджет для ИоБрокер

Beitrag von salambelgorod » 21.02.2018, 13:16

Создал виджет по инструкции..
https://github.com/ioBroker/ioBroker.vis-template
Добавил на гитхаб..https://github.com/salambelgord/ioBroker-vis.splitsys

Ну собственно вопрос...в ХТМЛ файле есть код

Code: Alles auswählen

<map name="Navigation">
  				<area class="btn" href="#"  shape="circle" coords="60,100,12"   alt="Toggle TempD">
  				<area class="btn" href="#"  shape="circle" coords="60,80,12"   alt="Toggle TempD">
 			    </map>
			<div id="rep" >
			<img src="widgets/splitsys/img/remoute.png" width="100" height="150" usemap="#Navigation" alt="Remoute">
            </div>
а в джскрипт файле вызов события онклик, ни как не хочет работать...что не так?

Code: Alles auswählen

$('.btn').click(function(){
  alert('Вы нажали на элемент "Toggle TempD"');
});

de_coder
Beiträge: 3
Registriert: 31.05.2018, 20:18

Re: Виджет для ИоБрокер

Beitrag von de_coder » 31.05.2018, 20:23

Тут надо смотреть весь твой код
открой отладку ... в браузере и смотри, возможно у тебя критические ошибки, до старта твоего скрипта, после которой уже дальнейший JS не работает.

Так же, я сам не писал HTML странички в vis...
Но js который ты пишешь в "скриптах" это СЕРВЕРНЫЙ js, который выполняется на сервере, а не в браузере пользователя. По этому событие click надо вероятно перехватывать по другому без использования Jquery

Вот тебе пример..
Делаем кнопку, после чего серверный код, для этой кнопки будет выглядеть примерно так...

Code: Alles auswählen


// Создаем объект кнопки.. и привязываем объект к кнопке в vis
createState('mirobot_home_btn');

// При нажатии (изменении ... вызывается функция...)
on({id: "mirobot_home_btn", change: "click"}, function (obj) {

});


Benutzeravatar
Bluefox
Site Admin
Beiträge: 7921
Registriert: 13.07.2014, 14:42
Kontaktdaten:

Re: Виджет для ИоБрокер

Beitrag von Bluefox » 31.05.2018, 22:44

Надо быть уверенным, что во время установки обработчика дом объект уже существует... часто его ещё нет. Помогает setTimeout на 300мс

Antworten