Страница 5 из 5
Re: Макросы %object.property%
Добавлено: Вт сен 09, 2014 12:02 pm
Ivan
sergejey писал(а):Я уже где-то писал, что такое не работает в страницах, но работает в меню и сценах. Обходной вариант -- это загонять в свойство целый код
<img src="/images/blocks/0.png" valign="bottom">
или
<img src="/images/blocks/1.png" valign="bottom">
и потом использовать вставку этого свойства типа
%Nano8.statusImage%
Не получается так делать в меню. Кавычки экранируются
<img src="\"/img/status_1.png\"" valign="\"bottom\"">
Но после АвтоОбновления всё становится как нужно
Всё же лучше иметь шаблон:
%relar.status|30|1=On;0=Off%
%relar.status|30|1=<img href="/img/On.gif">;0=<img href="/img/Off.gif">%
Re: Макросы %object.property%
Добавлено: Пт сен 12, 2014 12:58 pm
sergejey
Проблему с "экранизацией" HTML-кода в заголовках решил, теперь и при первой загрузке не должно быть битых картинок, если они используются.
Re: Макросы %object.property%
Добавлено: Сб сен 13, 2014 7:52 am
adzam
sergejey писал(а):PAV писал(а):Жаааль. А как заставить обновляться картинку? Есть обходы?
Нужно добавить такую функцию в код страницы или шаблона:
Код: Выделить всё
<script language="javascript">
function ajaxUpdateImageStatus(varname, id, timeout) {
var url="/";
url+='?md=application&action=ajaxgetglobal&var='+encodeURIComponent(varname);
$.ajax({
url: url
}).done(function(data) {
var obj=jQuery.parseJSON(data);
if (obj.DATA) {
$("#"+id).attr("src","/images/blocks/"+obj.DATA+".png");
}
});
if (timeout>0) {
window.setTimeout('ajaxUpdateImageStatus("'+varname+'", "'+id+'", '+timeout+');', timeout);
}
}
</script>
затем можно использовать так:
Код: Выделить всё
<img src="/images/blocks/0.png" valign="bottom" id="arduino_alive_img">
<script>ajaxUpdateImageStatus('Arduino.alive','arduino_alive_img',120)</script>
последние две строчки можно использовать многократно для разных картинок, где нужно менять 0 на 1 и наборот.
Код, честно говоря, не тестировал, но должно работать

А если не 0 и 1.
Как быть если надо поменять 10 иконок (Pogoda.Img) в зависимости какое значение имеет переменная (Sinoptik.Img) полученная с сервера погоды: ясно, облачно и т.д.
Re: Макросы %object.property%
Добавлено: Чт дек 28, 2017 12:10 pm
hc2hunter
%relar.status|30|1=On;0=Off%
Так, а реально такие конструкции невозможны?
Может существует способ использовать как-то тернарный оператор? Типа %object.value>10|30 ? "вставить_что-то_одно" : "вставить_что-то_еще"%
Было бы удобно...
Re: Макросы %object.property%
Добавлено: Чт дек 28, 2017 7:15 pm
Vovix
hc2hunter писал(а):%relar.status|30|1=On;0=Off%
Так, а реально такие конструкции невозможны?
Может существует способ использовать как-то тернарный оператор? Типа %object.value>10|30 ? "вставить_что-то_одно" : "вставить_что-то_еще"%
Было бы удобно...
вот
https://majordomo.smartliving.ru/forum/ ... 379#p41119