Foros del Web » Programando para Internet » Jquery »

seleccionar casillas en un radio de 1 y 2

Estas en el tema de seleccionar casillas en un radio de 1 y 2 en el foro de Jquery en Foros del Web. Buenas , les dejo el código que hice para que me digan como puedo hacer el algoritmo para seleccionar , es decir que me pinte ...
  #1 (permalink)  
Antiguo 31/08/2013, 06:48
 
Fecha de Ingreso: agosto-2013
Mensajes: 4
Antigüedad: 11 años, 3 meses
Puntos: 0
seleccionar casillas en un radio de 1 y 2

Buenas , les dejo el código que hice para que me digan como puedo hacer el algoritmo para seleccionar , es decir que me pinte de rojo las casillas de radio 1 y las de radio 2 de amarillo, al seleccionar una celda, creo que existe un algoritmo llamado alpha beta minimax que se usa para esto pero yo hice mi propio algoritmo y me funciona para las casillas de radio uno.

Código:
 <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>
PD: el tablero es un tablero con forma de hexágono relleno de hexágonos.

Última edición por pedoatomico; 31/08/2013 a las 07:31

Etiquetas: javascript, radio, select
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:26.