10. A BIRD IN A CAGE
Heading come rotazione
window.addEventListener ("deviceorientation",
traccia, false);
function traccia(evento){
document.querySelector('div')
.setAttribute('style','-webkit-
transform: rotateY(' + evento.alpha + 'deg);');
}
11. ROTATING PICTURE
Questione di origin
-webkit-transform-origin: 225px 150px 400px;
22. IL MASTER
var socket = new WebSocket("ws://0.0.0.0:8080");
socket.addEventListener("open", registratiMaster, false);
socket.addEventListener("message", stampaMessaggio,
false);
function registratiMaster(evento){
socket.send('register master');
}
function stampaMessaggio(evento){
console.log(evento.data);
var elemento = document.querySelector('span#' +
evento.data);
if (elemento != undefined)
elemento.innerHTML = parseInt(elemento.innerHTML)
+ 1;
}
23. IL SERVER
ws.onmessage do |msg|
case msg
when 'register master'
puts "the master is ready"
@channel.subscribe { |m| ws.send m }
else
puts "sending #{msg} to master"
@channel.push msg
end
ws.send msg
end
24. IL CLIENT
var socket = new WebSocket("ws://<%= @ip %>:8080");
socket.addEventListener("open", prontoPerVotare, false);
socket.addEventListener("message", nuovoMessaggio, false);
function prontoPerVotare(){
...
document.querySelector('a').addEventListener('click', vota,
false);
}
function vota(evento){
socket.send(evento.target.getAttribute('data-vote'));
}
function nuovoMessaggio(evento){
...
}