node.js モジュール内から HTML 要素の CSS 値を変更するにはどうすればよいですか?
私はnode.jsでラズベリーパイをセットアップしており、押すとLEDが点灯する物理ボタン(ハードウェア)がありますが、ボタンが押されたときに何が起こるかを反映するように画面上のHTMLを変更したいと思います。
javascript で以下のコードを使用して画面の CSS を変更できますが、node.js では同じことができないようです。
var highlightItem = '#someID';
$(highlightItem).css('border-style', 'solid');
$(highlightItem).css('border-color', 'red');
ありがとう
編集
私はまだやりたいことをすることができません...私はexpress.ioを使用していて、例はうまく機能していますが、それらを自分のプロジェクトに統合することはできないので、もう一度助けを求めるほうがよいと思いました...お願いします。
私の app.js は次のようになります。
var controller = require('custom/controllerModule');
var buttons = require('custom/pushButton');
var app = require('express.io')();
app.http().io();
app.get('/pushButtonWatchOff', buttons.pushButtonWatchOff);
app.get('/pushButtonWatchOn', buttons.pushButtonWatchOn);
app.get('/', function (req, res) {
res.sendfile(__dirname + '/views/index.html');
});
// Setup the ready route, and emit talk event.
app.io.route('ready', function(req) {
req.io.emit('talk', {
message: 'io event from an io route on the server'
})
})
// Send the client html.
app.get('/', function(req, res) {
res.sendfile(__dirname + '/views/index.html')
})
app.listen(3000);
console.log('Running');
そして、私の index.html は次のようになります。
<script>
$.get('/pushButtonWatchOn', {pinNumberOn: 4, pinNumberOff: 17});
io = io.connect()
// Emit ready event.
io.emit('ready')
// Listen for the talk event.
io.on('talk', function(data) {
alert(data.message)
})
</script>
これはすべて正常に機能し、画面が更新されると警告メッセージが表示されますが、Raspberry Pi のハードウェア ボタンの 1 つをクリックすると画面メッセージが表示されるようにしたいと考えています。
ハードウェア ボタンのコードは次のようになります (正常に動作します)。
var Gpio = require('onoff').Gpio;
var pinNumberOff;
var pinNumberOn;
exports.pushButtonWatchOn = function(req, res){
pinNumberOff = parseInt(req.query.pinNumberOff);
pinNumberOn = parseInt(req.query.pinNumberOn);
pushButtonWatchOn();
res.json(200, {message: 'success'});
}
function pushButtonWatchOn(){
console.log("\nWaiting For User Interation");
console.log("Push Button Active Pin: " + pinNumberOn);
console.log("Current State: Off");
pushButtonOn = new Gpio(pinNumberOn, 'in', 'both');
pushButtonOn.watch(function (err, value) {
if (err) throw err;
console.log("\nPush Button Pressed Using Pin: " + pinNumberOn);
console.log(__dirname);
pushButtonOn.unexport();
pushButtonWatchOff();
});
}
ボタンが押されたときにアラートを表示するのを手伝ってくれる人はいますか?
ありがとう