Código:
PD: el tablero es un tablero con forma de hexágono relleno de hexágonos. <script> $.ui.autoLaunch=true; $.ui.useOSThemes=false; $.ui.blockPageScroll(); $(document).ready(function(){ $.ui.availableTransitions['default'] = $.ui.availableTransitions['none']; $.ui.animateHeaders=false; $.ui.launch(); $('div.middle').click(selectar); }); function selectar () { var $this = $(this); var id = $this.parent().attr('id'); var cord1 = parseInt(id.substr(0,1)); var cord2 = parseInt(id.substr(1,1)); $('div.select-1').removeClass('select-1'); $('div.select-1-border').removeClass('select-1-border'); pintar(cord1-1, cord2, 1); pintar(cord1, cord2-1, 1); pintar(cord1+1, cord2, 1); pintar(cord1, cord2+1, 1); if (cord1<4) { pintar(cord1+1, cord2+1, 1); } else { pintar(cord1+1, cord2-1, 1); } if (cord1<5) { pintar(cord1-1, cord2-1, 1); } else{ pintar(cord1-1, cord2+1, 1); } $('div.select-2').removeClass('select-2'); $('div.select-2-border').removeClass('select-2-border'); pintar(cord1-2, cord2, 2); pintar(cord1, cord2-2, 2); pintar(cord1+2, cord2, 2); pintar(cord1, cord2+2, 2); if (cord1<4) { pintar(cord1+2, cord2+2, 2); } else { pintar(cord1+2, cord2-2, 2); } if (cord1<5) { pintar(cord1-2, cord2-2, 2); } else{ pintar(cord1-2, cord2+2, 2); } } function pintar (cord1, cord2, m) { var tablero = [5, 6, 7, 8, 9, 8, 7, 6, 5]; if ((cord1>=0 && cord2>=0) && (cord2<tablero[cord1] && cord1<9)) { //alert('cord1:'+cord1+' cord2:'+cord2); $('#'+cord1+cord2).children('.middle').addClass('select-'+m); $('#'+cord1+cord2).children('.top, .bottom').addClass('select-'+m+'-border'); } } </script>