0
JavaScript 및 푸셔를 처음 사용했습니다. 클릭 가능한 그리드가있는 웹 사이트를 만들고 있는데, 한 셀을 클릭 할 때마다 푸셔 이벤트를 보내려고하므로 동일한 셀이 다른 모든 사용자에게 표시됩니다. 나는 푸셔 채널을 구독하고 들어오는 메시지를 받았다. (지금은 다른 스크립트로 보내고있다.) 메시지를받은 후에 그리드를 업데이트하는 데 실패했다. 정말 JS를 알 수 없기 때문에 푸셔 통지를받은 후하지 않는 업데이트하는 동안푸셔 이벤트 문서 업데이트
var pusher = new Pusher('xxxxxxxxxxxxxxxxx', {
cluster: 'eu',
encrypted: true
});
var channel = pusher.subscribe('app');
var grid = clickableGrid({{y}},{{x}},function(el,row,col,i){
el.className = 'clicked';
});
channel.bind('cell_marked', function(data) {
var x = data['message'][0];
var y = data['message'][1];
grid.rows[x].cells[y].className == 'marked';
});
document.body.appendChild(grid);
function clickableGrid(rows, cols, callback){
var i = 0;
var grid = document.createElement('table');
grid.className = 'grid';
for (var r=0;r<rows;++r){
var tr = grid.appendChild(document.createElement('tr'));
for (var c=0;c<cols;++c){
var cell = tr.appendChild(document.createElement('td'));
cell.innerHTML = ++i;
cell.addEventListener('click',(function(el,r,c,i){
return function(){
callback(el,r,c,i);
}
})(cell,r,c,i),false);
}
}
return grid;
}
많이 나는 세포의 작품을 클릭에 대한 이유를 이벤트 리스너를하지 않습니다.
와우, 정말 장님입니다. 고마워, 그랬어. 명백한 문제를보기 위해 다른 사람이 필요하다고 생각합니다. 건배! – Ijon