@invest193 said in Как сделать кнопку прямо в браузере для возврата контроля приложению в вебинтерфейсе:
как сделать чтобы при клике срабатывала передача контроля приложению?
Ни как
@dmitr said in Глобальная переменная в интерфейсе:
Всем привет, хочу выводить счетчик с глобальной переменной в интерфейс.
Использую такой скрипт:setInterval(function() { Api.GetGlobalVariable("COUNTER").then(function(res) { $("#SuccessSend").html(res) }) }, 1000);Работает как надо, но вот когда я стопаю скрипт получаю пустое значение.
Подскажите пожалуйста как правильно оформить код, чтобы при завершении скрипта оставалось последнее значение переменной.
Можно создать функцию в событии Event stop останавливающее счётчик. Либо просто проверять переменную на пустоту.
setInterval(function() {
Api.GetGlobalVariable("COUNTER").then(function(res) {
if(typeof(res) != "undefined") $("#SuccessSend").html(res);
})
}, 1000);
@fox не помогло, все равно после стопа получаю пустоту.
У меня всё сработало, оказывается api возвращает пустое значение переменной:
setInterval(function() {
Api.GetGlobalVariable("COUNTER").then(function(res) {
if(res != "") $("#SuccessSend").html(res)
})
}, 1000);

Но setInterval() лучше остановить по завершению скрипта, я бы использовал такой код:
var intervalID = setInterval(function() {
Api.GetGlobalVariable("COUNTER").then(function(res) {
if(res != "") $("#SuccessSend").html(res)
})
}, 1000);
а в событие событии Event stop добавил бы очистку таймера clearInterval(intervalID);
if(EventType == "stop")
{
clearInterval(intervalID);
UIkit.tab($("#GlobalTabsHeader")[0]).show(1);
$("#CardStatusRunning").hide()
$("#CardStatusStopped").show()
$("#ThreadsRunning").html("0")
$("#BrowserNumber").html("0")
$("#BrowserManualNumber").html("0")
$("#BrowserManualMessage").hide()
}
@dmitr said in Глобальная переменная в интерфейсе:
@fox если не сложно, то подскажите пожалуйста, можно ли узнать изменение числа глобальной переменной и задать условие?
Например если оно стало больше на 1, то выполнять что то.
На сколько я знаю api BAS не поддерживает событие onchange. Тут только так же циклом проверять. Можно в самой функции:
var intervalID = setInterval(function() {
Api.GetGlobalVariable("COUNTER").then(function(res) {
if(res != "") $("#SuccessSend").html(res)
if(res == 5) alert("Здесь могла быть ваша реклама")
})
}, 1000);
или запускать функцию внутри функции:
function advertising(q){
alert(q)
}
var intervalID = setInterval(function() {
Api.GetGlobalVariable("COUNTER").then(function(res) {
if(res != "") $("#SuccessSend").html(res)
if(res == 5) advertising("Здесь могла быть ваша реклама")
})
}, 1000);
или внутри цикла изменять переменную, за которой следит другая функция. В общем как душе угодно :D
По второму вопросу немного, не то, но спасибо.
Мне нужно проверить счетчик и если он увеличился хотя бы на единицу, то выполнять код.
Обычное сравнение с числом не подойдет
if(res == 5) alert("Здесь могла быть ваша реклама")
Счетчик будет увеличиваться каждый раз и мне нужно отследить каждое его увеличение.
@dmitr said in Глобальная переменная в интерфейсе:
По второму вопросу немного, не то, но спасибо.
Мне нужно проверить счетчик и если он увеличился хотя бы на единицу, то выполнять код.
Обычное сравнение с числом не подойдет
if(res == 5) alert("Здесь могла быть ваша реклама")Счетчик будет увеличиваться каждый раз и мне нужно отследить каждое его увеличение.
Так?
var check
var intervalID = setInterval(function() {
Api.GetGlobalVariable("COUNTER").then(function(res) {
if(res != "") $("#SuccessSend").html(res)
if(res != check) {
alert("Ура, значение изменилось")
check = res
})
}, 1000);
Привет всем! Подскажите а как в функции в БАСе получить [[COUNTER]] ? в кубике из примера выше
@cybernatic said in Глобальная переменная в интерфейсе:
Привет всем! Подскажите а как в функции в БАСе получить [[COUNTER]] ? в кубике из примера выше
В каком кубике из примера выше? Все примеры кода в этой теме указаны для веб интерфейса