node.jsとsocket.ioを使ってページを作りたいです。
ページ内には 2 つのボタンがあり、そのうちの 1 つをクリックすると、animation-duration を定義する変数が変更されます (ここでは CSS アニメーション コードは省略します)。
別の Web ブラウザーで同じページを開いていずれかのボタンをクリックすると、両方の Web ページで変更が見られることを期待しています。socket.on('chat', function(data){???});
2 つのページが相互に通信するように内にコードを記述する方法がわかりません。
クライアント側:
//socket.io コード --
<script type="text/javascript" charset="utf-8">
var socket = io.connect('http://localhost:3000');
socket.on('chat', function (data)
{
function change_position(data)
{
document.getElementById("animation1").style.WebkitAnimationDuration=data;
}
});
</script>
.....
//アクション -
<body>
<button id="1b" type="button" style="position:absolute; left:377px; top:220px;" value="2s"; onclick="change_position(value)"> - 1 - </button>
<button id="2b" type="button" style="position:absolute; left:477px; top:220px;" value="15s"; onclick="change_position(value)"> - 2 - </button>
</body>
サーバ側:
var io = require('socket.io'),
connect = require('connect');
var app = connect().use(connect.static('public')).listen(3000);
var chat_room = io.listen(app);
chat_room.sockets.on('connection', function (socket) {
socket.on('chat', function (data) {
chat_room.sockets.emit('chat', data);
});
});