python - Python、Paho、Raspberry Pi、SenseHat 和 Sliders。我希望在移动滑块时不重置这些值
问题描述
长时间堆栈溢出用户 - 第一次调用者!
我目前正在开发 HTML 和 Python Paho 服务器。我拥有该程序的全部功能,但被困在最后一点。
如果 sense hat 正在运行(或 sense_emu),则滑块可用于更改所有像素的 RGB 值。当我停止服务器并在访问网站时重新运行时,这些值从服务器停止时开始正确显示,包括正确位置的滑块。
问题是当我移动其中一个滑块时,剩余的 2 个重置为 0。我可以看到问题出在哪里,但不知道如何解决它。
client.onMessageArrived = function onMessageArrived(message) {
console.log("onMessageArrived:" + message.payloadString + " for topic " + message.destinationName);
var data = JSON.parse(message.payloadString);
if (message.destinationName === TOPIC) {
$("input[type=range].redLevel").val(data.r);
$("#redLevel").html(data.r);
$("input[type=range].greenLevel").val(data.g);
$("#greenLevel").html(data.g);
$("input[type=range].blueLevel").val(data.b);
$("#blueLevel").html(data.b);
}
}
这是我正在修复的代码
$(document).ready(function() {
$("#clientId").html(CLIENT_ID);
levelR = 0;
levelG = 0;
levelB = 0;
$("input[type=range].redLevel").on('input', function() {
levelR = $(this).val();
payload = {
"r" : levelR, "g" : levelG, "b" : levelB
};
var message = new Paho.Message(
JSON.stringify(payload)
);
message.destinationName = TOPIC;
message.qos = 2;
message.retained = true;
client.send(message);
});
$("input[type=range].greenLevel").on('input', function() {
levelG = $(this).val();
payload = {
"r" : levelR, "g" : levelG, "b" : levelB
};
var message = new Paho.Message(
JSON.stringify(payload)
);
message.destinationName = TOPIC;
message.qos = 2;
message.retained = true;
client.send(message);
});
$("input[type=range].blueLevel").on('input', function() {
levelB = $(this).val();
payload = {
"r" : levelR, "g" : levelG, "b" : levelB
};
var message = new Paho.Message(
JSON.stringify(payload)
);
message.destinationName = TOPIC;
message.qos = 2;
message.retained = true;
client.send(message);
});
});
解决方案
我设法通过在每个滑块的事件侦听器中放置一个不同的值获取器来解决这个问题(显示的是使用 $(this) 而不是类 .identifier 的红色滑块)
$("input[type=range].redLevel").on('input', function() {
levelR = $(this).val();
levelG = $(".greenLevel").val();
levelB = $(".blueLevel").val();
感谢您为我指明正确的方向。
推荐阅读
- python - 尽管已成功训练和测试模型,但仍尝试预测导致 ValueError 的新数据
- python - 将 CSV 值转换为日期时间并在 python 中创建函数
- ruby-on-rails - from_with 标记导致 Rails 中的内部服务器错误
- r - 如何在特定行拆分热图?错误对原子向量无效
- nagios - 如何在 nagios 联系人配置文件中转义撇号
- mysql - 在jooq框架中将给定时间转换为秒
- c# - 如何让我的安卓应用程序连接到互联网?(统一)
- javascript - 为什么给定示例结果的按位异或 (^) 不同?逻辑是什么?JS
- javascript - Flask SocketIO Emit with broadcast=true 不会向发送者发送消息
- java - 从文件中获取整数值到数组