Страница 3 из 3

Re: Иконки в главном меню.

Добавлено: Сб мар 18, 2017 9:03 pm
Chainik
Признаюсь, джаваскриптов никогда не писал, однако попытался что-то "изобразить", решая задачу, указанную в конце предыдущего поста.
На основе кода, приведенного ув. directman66 2 поста назад, попытался его дополнить последним джаваскриптом:

Код: Выделить всё

<script>$('.button-wrap').on("click", function(){
$(this).toggleClass('button-active');
});
//# sourceURL=pen.js
</script>

<script type="text/javascript">
var Status='%Switch1.status%';
if (Status!==0){
function(){
$(this).toggleClass('button-active');
};
}
</script>
Но чуда не произошло, элемент не синхронизируется со свойством, изменяемым отдельно от выключателя...
Может кто знает, как правильно?
На всякий случай выложу весь код.
SPOILERSPOILER_SHOW

Код: Выделить всё

<!DOCTYPE html><html class=''>
<head>
<meta charset='UTF-8'>
<meta name="robots" content="noindex">
<style class="cp-pen-styles">
*,
*:before,
*:after {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
body {
font-family: 'Helvetica', sans-serif;
}

/* BUTTON 4 */
.four .button-wrap {
width: 100px;
margin: 40px auto 0;
cursor: pointer;
}
.four .button-bg {
width: 100%;
height: 100%;
background-color: #44453d;
border-radius: 40px;
padding: 3px;
color: #fff;
transition: all 0.2s ease;
}
.four .button-switch {
position: relative;
left: 0px;
width: 44px;
height: 44px;
border: solid 13px;
background-color: #fff;
border-radius: 36px;
transition: all 0.2s ease;
}
.four .button-active .button-switch {
left: 50px;
}
.four .button-in,
.four .button-out {
position: absolute;
transition: all 0.2s ease;
padding-top: 15px;
font-size: 0.8em;
text-transform: uppercase;
font-weight: bold;
}
.four .button-in {
margin-left: 76px;
}
.four .button-out {
margin-left: 18px;
}
.four .button-active .button-bg {
background-color: #c7d923;

</style></head><body>

<table> 
<tr> <td>
<div class="four">
<div class="button-wrap" onClick='callMethod("%Switch1.switch");'>
<div class="button-bg">
<div class="button-out"></div>
<div class="button-in"></div>
<div class="button-switch"></div>
</div>
</div>
</div>
</td><td>
<div class="four">
<div class="button-wrap">
<div class="button-bg">
<div class="button-out"></div>
<div class="button-in"></div>
<div class="button-switch"></div>
</div>
</div>
</div>
</td></tr>
</table>

<script>$('.button-wrap').on("click", function(){
$(this).toggleClass('button-active');
});
//# sourceURL=pen.js
</script>

<script type="text/javascript">
var Status='%Switch1.status%';
if (Status!==0){
function(){
$(this).toggleClass('button-active');
};
}
</script>
</body></html>

Re: Иконки в главном меню.

Добавлено: Пн мар 20, 2017 2:59 pm
directman66
Тема интересная, но как подключить знающих в программировании.

Re: Иконки в главном меню.

Добавлено: Пн мар 20, 2017 5:08 pm
Vovix
directman66 писал(а):Тема интересная, но как подключить знающих в программировании.
чтобы переключатель имел обратную связь, без перезагрузки страницы
вам нужно будет использовать технологию AJAX
или WebSockets
(хотя я не знающий, так - любитель)

Re: Иконки в главном меню.

Добавлено: Пн мар 20, 2017 6:09 pm
Vovix
вам похоже поможет это: viewtopic.php?f=4&t=1475&hilit=%D0%BC%D ... 0%BB#p9656

Re: Иконки в главном меню.

Добавлено: Пн мар 20, 2017 10:15 pm
Chainik
Vovix писал(а):вам нужно будет использовать технологию AJAX
или WebSockets
Vovix, спасибо за указание направления "земляных работ".
WebSockets, у меня "не полетели" (видимо, ввиду "криворукости").

Код: Выделить всё

<script>$('.button-wrap').on("click", function(){
$(this).toggleClass('button-active');
});
//# sourceURL=pen.js
</script>

<!-- %switch1.status|0% --> 
<script language="javascript">
$.subscribe('switch1.status.updated',function (_, value) {
$(this).toggleClass('button-active');
});
</script>
Попробуем теперь посмотреть на Мидлконнектор. Вдруг что получится.

Re: Иконки в главном меню.

Добавлено: Чт апр 06, 2017 3:27 pm
directman66
Подниму тему, вопрос все же актуален.

Re: Иконки в главном меню.

Добавлено: Ср апр 19, 2017 1:01 pm
directman66
Vovix, добавлю вашу ссылку сюда. Может на досуге попробую применить. Так понимаю, что должно помочь.

viewtopic.php?f=4&p=50850#p50850

Re: Иконки в главном меню.

Добавлено: Сб апр 22, 2017 12:44 am
alexsis_76
Вам нужно обрабатывать событие onclick
onclick=ваша функция();в вашей функции нужно послать запрос к устройству,сделать это можно на голом аяксе или с библиотекой jquery,затем распарсить ответ устройства ,ну и getElementById решит все ваши проблемы.

Re: Иконки в главном меню.

Добавлено: Пт май 05, 2017 1:01 pm
directman66
как вариант помечает кнопку цветом

Код: Выделить всё

<style>
 a.knopka {
  color: #fff; /* цвет текста */
  text-decoration: none; /* убирать подчёркивание у ссылок */
  user-select: none; /* убирать выделение текста */
  background: %Relay12.color%; /* фон кнопки */
  padding: .7em 1.5em; /* отступ от текста */
  outline: none; /* убирать контур в Mozilla */
} 
</style>

<a href="#" class="knopka" onClick='callMethod("%Relay12.switch");'>кнопка</a>
объект обновляется штатными настройками без ява-таймера (из меню).